Задача 5 Урок 16

Задача 5 Урок 16

Пользователь вводит N (N

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

type arr= array [1..4,1..2] of integer; arr1= array [1..2] of integer;
var a,b: arr; c:arr1; i:integer;

function proverka(a1,b1:arr; var c1:arr1):boolean;
var i,t:integer;
begin
  result:=true;
  for i:=low(a1) to high(a1) do
  begin
    for t:=low(a1) to high(a1) do
      if (a1[i][2]<a1[t][1]) or (a1[i][1]>a1[t][2]) then
      begin
        result:=false;
        break
      end
      else
      begin
        if a1[i][1]>a1[t][1] then
          c1[1]:=a1[i][1]
        else
          c1[1]:= a1[t][1];
        if a1[i][2]<a1[t][2] then
          c1[2]:=a1[i][2]
        else
          c1[2]:= a1[t][2];
      end;
      if result=false then
        break;
  end;
end;

begin
  for i:=low(a) to high(a) do
  begin
    readln(a[i][1]);
    readln(a[i][2]);
  end;
  if proverka(a,b,c) then
    write(c[1],';',c[2])
  else
    write('ne peresekayutsa');
  readln();
end.