C4.** плоскости дан набор точек с целочисленными координатами.Найти площадь наибольшего...

0 голосов
65 просмотров

C4.
На плоскости дан набор точек с целочисленными координатами.Найти площадь наибольшего четырёхугольника ,у которого 2 точки лежат на оси ОХ,а 2 другие по разные стороны от оси ОХ.


Информатика (29 баллов) | 65 просмотров
Дан 1 ответ
0 голосов

Type
mas=array[,]of integer;
var
  i,n:integer;
  a:mas;
  b:array[1..4]of integer;
begin
write('Сколько точек: ');
readln(n);
setlength(a,3,n+1);
for i:=1 to n do
  begin
  write('Введите координаты точки: ');
  readln(a[1,i],a[2,i]);
  end;
for i:=1 to n do
  begin
  if a[2,i]=0 then
    begin
    if b[1]=0 then b[1]:=i else if a[1,i]    if b[2]=0 then b[2]:=i else if a[1,i]>a[1,b[2]] then b[2]:=i;
    end;
  if a[2,i]>0 then
    if b[3]=0 then b[3]:=i else if a[2,i]>a[2,b[3]] then b[3]:=i;
  if a[2,i]<0 then<br>    if b[4]=0 then b[4]:=i else if a[2,i]
  end;
writeln('Координаты вершин четырехугольника с наибольшей площадью:');
for i:=1 to 4 do write('(',a[1,b[i]],';',a[2,b[i]],') ')
end.

0

Это ПаскальАВС.NET, не классика. Тут все по-другому. Программа протестирована, работает 100%.

0

Этот вариант Паскаля сейчас в большинстве школ уже. Посмотрите - на этом сайте почти все задания на нем пишут.

0

В таком случае или сразу указывают на нужный вариант языка, либо потом просят переделать))

0

Хорошо, проверю

0

Программа выдает (-3,0) (3,0) (2,3) (4,-3). Я с ней согласен. В предложенном наборе есть еще один с такой же площадью (-3,0) (3,0) (2,3) (-6,-3). Но с большей я не вижу. Скажи, у какого больше?

0

Ну в учебных заданиях предполагаем, что данные будет вводится корректно. Иначе, проверка входных данных оговаривается особо. Если задача для реального использования, то дополнить проверку несложно.