Используем формулу Герона для нахождения площади треугольника по трем сторонам: S=√(p·(p-a)·(p-b)·(p-c)), где p - полупериметр, равный p=(a+b+c)/2
Программа:
program z; var a1,b1,c1,a2,b2,c2,p1,p2,s1,s2:real; begin readln(a1,b1,c1); {ввод длин сторон первого треугольника} p1:=(a1+b1+c1)/2; {полупериметр первого треугольника} s1:=sqrt(p1*(p1-a1)*(p1-b1)*(p1-c1)); {площадь первого треугольника}
readln(a2,b2,c2); {ввод длин сторон второго треугольника} p2:=(a2+b2+c2)/2; {полупериметр второго треугольника} s2:=sqrt(p2*(p2-a2)*(p2-b2)*(p2-c2)); {площадь второго треугольника} if s1=s2 {если площади треугольников равны} then writeln('Yes') {то вывести положительный ответ} else writeln('No'); {иначе вывести отрицательный ответ} end.
Var K:array[1..2,1..13] of integer; i,j,ind,x,y:integer; MAX:real; function RAST(x1,x2,y1,y2:integer):real; begin RAST:=sqrt(sqr(x2-x1)+sqr(y2-y1)); end; begin MAX:=-2*sqr(-10-1); randomize; writeln('Исходные точки:'); for j:=1 to 13 do begin writeln('Точка № ',j,', с координатами(X,Y)'); for i:=1 to 2 do begin K[i,j]:=random(110) - 10; write(K[i,j],' '); end; writeln; end; for i:=1 to 13 do if RAST(0,K[1,i],0,K[2,i])>MAX then begin MAX:=RAST(0,K[1,i],0,K[2,i]); x:=K[1,i]; y:=K[2,i]; ind:=i; end; writeln('Номер точки: ',ind,' Координаты: ',x,' ; ',y); end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку