Задача 5 Урок 16
Primary tabs
Пользователь вводит 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. - Log in to post comments
- 319 reads