Предмет: Информатика, автор: koteika777

Нужно переделать эту программу на паскале для нахождения треугольника с самой большой площадью, образованным всеми вариантами точек
uses crt,graphABC;
var
x,y:array[1..100] of integer;
maxR,R,i,j:integer;
begin
randomize;
for i:=1 to 100 do
begin
x[i]:=random(600)+10;
y[i]:=random(360)+10;
circle(x[i],y[i],2);
end;
maxR:=0;
for i:=1 to 99 do
for j:= i+1 to 100 do
begin
R:=sqr(x[i]-x[j])+sqr(y[i]-y[j]);
if R>maxR then maxR:=R;
end;
readln;
setpencolor(clred);
for i:=1 to 99 do
for j:=i+1 to 100 do
begin
R:=sqr(x[i]-x[j])+sqr(y[i]-y[j]);
if R=maxR then line (x[i],y[i],x[j],y[j]);
if R=maxR then writeln (x[i],' ',y[i],' ',x[j],' ',y[j]);
end;
end.

Ответы

Автор ответа: pacixor
1
Попробуйте такое:


uses graphABC;
var
  x, y: array [1 .. 100] of integer;
  mI, mJ, mK, maxR, R, i, j, k: integer;
begin
  randomize;
  for i := 1 to 100 do
  begin
    x[i] := random(600) + 10;
    y[i] := random(360) + 10;
    circle(x[i], y[i], 2);
  end;
  maxR := 0;
  for i := 1 to 100 do
    for j := 2 to 99 do
      for k := 3 to 98 do
      begin 
        R := abs((x[i]-x[k])*(y[j]-y[k])-(x[j]-x[k])*(y[i]-y[k])div 2);
        if R > maxR then
        begin
          maxR := R;
          if R > mI then mI := i;
          if R > mJ then mJ := j;
          if R > mK then mK := k;
        end;
      end;
  setpencolor(clred);
  line(x[mI], y[mI], x[mJ], y[mJ]);
  line(x[mJ], y[mJ], x[mK], y[mK]);
  line(x[mK], y[mK], x[mI], y[mI]);
end.
Похожие вопросы
Предмет: ОБЖ, автор: skdknfhrudj
Предмет: Алгебра, автор: xakimovrufat07
Предмет: История, автор: Londongrad
Пожалуйста это очень срочно
1? Памятники героям Великой Отечественной войны (кому именно посвящены, где находятся, фамилия скульптора):
1.Памятник советскому военному-освободителю в Берлине.
2.Памятник Ансамбль героям Сталинградской битвы на Мамаевом гургане.
3.Памятник "Неизвестному солдату".
4.Памятник подводная лодка с 58.

2? Как называется план нападения на СССР.
3?Как называется второй период Великой Отечественной
войны.
4? Кому принадлежат слова: " Велика Россия, а отступать некуда.Позади Москва.
5?Как называется план захвата столицы СССР".
6?Кто является автором знаменитого плаката " Родина - мать зовёт".
7? Кто стал верховным главнокомандующим Советскими войсками 8 авг. 1941г.
8?Как называется план контрнаступления советских войск под Сталинградом.
9?За какую операцию 2 438 воинов были удостоены звания героя Советского союза.
10?Где состоялась самая крупная в истории танковое сражение.
11?Когда был открыт фронт во 2 Мировой войне.
12?"Стратегическая инициатива" что это значит.
13?Что означает следующее название "Нюрнбергский процесс".
Предмет: История, автор: 12345678912345678927