Param65. Используя тип TPoint и функцию Leng (см. задание Param64), описать тип TTriangle — запись с полями $$A$$, $$B$$, $$C$$ типа TPoint (вершины треугольника) — и функцию Perim($$T$$) вещественного типа, находящую периметр треугольника $$T$$ ($$T$$ — параметр типа TTriangle). С помощью этой функции найти периметры треугольников $$ABC$$, $$ABD$$, $$ACD$$, если даны координаты точек $$A$$, $$B$$, $$C$$, $$D$$.
Решение:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
program Param65; type TPoint = record x,y:real; end; TTriangle = record A,B,C:TPoint; end; var A,B,C,D:TPoint; ABC,ABD,ACD:TTriangle; Function Leng(A,B:TPoint):real; begin Leng:=sqrt(sqr(A.X-B.X)+sqr(A.Y-B.Y)); end; Function Perim(T:TTriangle):real; begin Perim:=Leng(T.A,T.B)+Leng(T.B,T.C)+Leng(T.C,T.A); end; begin Write('A(x,y): '); Readln(A.x,A.y); Write('B(x,y): '); Readln(B.x,B.y); Write('C(x,y): '); Readln(C.x,C.y); Write('D(x,y): '); Readln(D.x,D.y); ABC.A:=A; ABC.B:=B; ABC.C:=C; ABD.A:=A; ABD.B:=B; ABD.C:=D; ACD.A:=A; ACD.B:=C; ACD.C:=D; Writeln(Perim(ABC)); Writeln(Perim(ABD)); Writeln(Perim(ACD)); end. |
Другие задачи из раздела Param можно посмотреть здесь.
Комментарии: