Треугольник существует, если сумма длин двух любых его сторон больше длины третьей стороны. Длина стороны может быть определена как расстояние между соответствующими сторонами треугольника:
// PascalABC.NET 3.0, сборка 1160 от 05.02.2016 type Point=record x,y:real end;
procedure GetPoint(c:char;var M:Point); begin Write('Введите координаты точки ',c,': '); Read(M.x,M.y) end;
function Dist(a,b:Point):=sqrt(sqr(b.x-a.x)+sqr(b.y-a.y));
begin var A,B,C:Point; GetPoint('A',A); GetPoint('B',B); GetPoint('C',C); var ab:=Dist(A,B); var bc:=Dist(B,C); var ac:=Dist(A,C); if (ab<bc+ac) and (bc<ab+ac) and (ac<ab+bc) then Writeln('Треугольник существует') else Writeln('Треугольник не существует') end.
Тестовое решение: Введите координаты точки A: -6.9 -5.3 Введите координаты точки B: 0 11.4 Введите координаты точки C: 9 3 Треугольник существует
program proga_25_1; Var A: text; i,j,n,m : byte; d: string; Sim:char; Begin write('Введите имя текстового файла '); {Например: "test" он создастся там где находится сама программа } read(d); Assign(A,d); rewrite(A); write('Введите количество строк: N= '); readln(n); write('Введите количество символов в строке: M= '); readln(m); for I:=1 to n do begin Sim:=Chr(Ord('1')+I-1); For J:=1 to m do write(A,Sim); writeln(A); end; close(A); end.
Длина стороны может быть определена как расстояние между соответствующими сторонами треугольника:
// PascalABC.NET 3.0, сборка 1160 от 05.02.2016
type
Point=record
x,y:real
end;
procedure GetPoint(c:char;var M:Point);
begin
Write('Введите координаты точки ',c,': ');
Read(M.x,M.y)
end;
function Dist(a,b:Point):=sqrt(sqr(b.x-a.x)+sqr(b.y-a.y));
begin
var A,B,C:Point;
GetPoint('A',A); GetPoint('B',B); GetPoint('C',C);
var ab:=Dist(A,B);
var bc:=Dist(B,C);
var ac:=Dist(A,C);
if (ab<bc+ac) and (bc<ab+ac) and (ac<ab+bc) then
Writeln('Треугольник существует')
else Writeln('Треугольник не существует')
end.
Тестовое решение:
Введите координаты точки A: -6.9 -5.3
Введите координаты точки B: 0 11.4
Введите координаты точки C: 9 3
Треугольник существует
Var
A: text;
i,j,n,m : byte;
d: string;
Sim:char;
Begin
write('Введите имя текстового файла '); {Например: "test" он создастся там где находится сама программа }
read(d);
Assign(A,d);
rewrite(A);
write('Введите количество строк: N= ');
readln(n);
write('Введите количество символов в строке: M= ');
readln(m);
for I:=1 to n do
begin
Sim:=Chr(Ord('1')+I-1);
For J:=1 to m do
write(A,Sim);
writeln(A);
end;
close(A);
end.