Дана точка a(x, y). определить, принадлежит ли она прямоугольнику с вершинами в точках (x1, y1), (x2, y2), (x3, y3) , (x4, y4). паскаль. с программкой.

yanarem1 yanarem1    3   19.09.2019 18:30    3

Ответы
luya21 luya21  21.08.2020 11:56
// PascalABC.NET 3.3, сборка 1627 от 27.01.2018
// Внимание! Если программа не работает, обновите версию!

begin
  var n:=4;
  var xp:=new real[n];
  var yp:=new real[n];
  Writeln('Введите парами координаты четырех вершин');
  for var i:=0 to n-1 do Read(xp[i],yp[i]);
  var (x,y):=ReadReal2('Введите координаты точки:');
  var (i,j,c):=(0,n-1,False);
  while i<n do begin
    if ((yp[i]<=y) and (y<yp[j]) or (yp[j]<=y) and (y<yp [i]))
      and (x<(xp[j]-xp[i])*(y-yp[i])/(yp[j]-yp[i])+xp[i]) then c:=not c;
    j:=i; i+=1;
    end;
  if c then Writeln('Внутри')
  else Writeln('Не внутри')
end.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика