Задали в вузике две задачки, одну осилил сам, но почему-то какие-то проблемы. Вторую не очень понимаю, как реализовать. Помогите, пожалуйста. Спасибо заранее.
1.Дан целочисленный массив Х(3n). Последовательность элементов этого массива оп-ределяет на плоскости n квадратов со сторонами, параллельными осям координат. Так, (х1,х2) - координаты левого верхнего угла первого квадрата, а х3 - длина его стороны, и т. д. Определить номера квадратов, которым принадлежит точка с известными координа-тами (p,q).
Код:
program Project4;
{$APPTYPE CONSOLE}
uses
SysUtils;
var
X: array[0..8] of integer;
p,q: integer;
l,i,j: integer;
x1,x2,x3: integer;
begin
Writeln('vvedi p,q');
Readln(p,q);
X[0]:=3;
X[1]:=5;
X[2]:=4;
X[3]:=9;
X[4]:=1;
X[5]:=15;
X[6]:=4;
X[7]:=17;
X[8]:=2;
l := Length(X);
i := 0;
j := 1;
while (i < l) do begin
x1 := X[i];
x2 := X[i + 1];
x3 := X[i + 2];
//Writeln(x1,',',x2,',',x3);
if ((p >= x1) and (q >= x2) and (p <= (x1 + x3)) and (q <= (x2 + x3))) then
begin
writeLn(j);
//writeln(l);
end;
Inc(j);
Inc(i,3);
end;
readln;
end.
В итоге номер квадрата все-таки почему-то не выводится.
2. Приложил условие.