Два прямоугольника, расположенные в первом квадранте, со сторонами, параллельными осям координат, заданы координатами (программа Паскаль)
101
467
Ответы на вопрос:
uses crt;
var x1,x2,y1,x3,x4,y2,s:real;
begin
clrscr;
repeat
writeln('Введите абциссы вертикальных сторон первого прямоугольника x2>x1>=0');
readln(x1,x2);
until(x1>=0)and(x2>x1);
repeat
write('Ордината верхней стороны y1>0 y1=');
readln(y1);
until y1>0;
repeat
writeln('Введите абциссы вертикальных сторон второго прямоугольника x4>xx>=0');
readln(x3,x4);
until(x3>=0)and(x4>x3);
repeat
write('Ордината верхней стороны y2>0 y2=');
readln(y2);
until y2>0;
if (x3>=x2)or(x4<=x1) then write('Прямоугольники не пересекаются!')
else
begin
if y1>=y2 then
begin
if(x3>=x1)and(x4<=x2)then s:=(x4-x3)*y2 else
if(x3>=x1)and(x4>=x2)then s:=(x2-x3)*y2 else
if(x3<=x1)and(x4>=x2)then s:=(x2-x1)*y2 else
if(x3<=x1)and(x4<=x2)then s:=(x4-x1)*y2
end
else
begin
if(x3>=x1)and(x4<=x2)then s:=(x4-x3)*y1 else
if(x3>=x1)and(x4>=x2)then s:=(x2-x3)*y1 else
if(x3<=x1)and(x4>=x2)then s:=(x2-x1)*y1 else
if(x3<=x1)and(x4<=x2)then s:=(x4-x1)*y1
end;
write('Прямоугольники пересекаются, площадь пересечения=',s:0:2);
end;
readln
end.
var x1,x2,y1,x3,x4,y2,s:real;
begin
clrscr;
repeat
writeln('Введите абциссы вертикальных сторон первого прямоугольника x2>x1>=0');
readln(x1,x2);
until(x1>=0)and(x2>x1);
repeat
write('Ордината верхней стороны y1>0 y1=');
readln(y1);
until y1>0;
repeat
writeln('Введите абциссы вертикальных сторон второго прямоугольника x4>xx>=0');
readln(x3,x4);
until(x3>=0)and(x4>x3);
repeat
write('Ордината верхней стороны y2>0 y2=');
readln(y2);
until y2>0;
if (x3>=x2)or(x4<=x1) then write('Прямоугольники не пересекаются!')
else
begin
if y1>=y2 then
begin
if(x3>=x1)and(x4<=x2)then s:=(x4-x3)*y2 else
if(x3>=x1)and(x4>=x2)then s:=(x2-x3)*y2 else
if(x3<=x1)and(x4>=x2)then s:=(x2-x1)*y2 else
if(x3<=x1)and(x4<=x2)then s:=(x4-x1)*y2
end
else
begin
if(x3>=x1)and(x4<=x2)then s:=(x4-x3)*y1 else
if(x3>=x1)and(x4>=x2)then s:=(x2-x3)*y1 else
if(x3<=x1)and(x4>=x2)then s:=(x2-x1)*y1 else
if(x3<=x1)and(x4<=x2)then s:=(x4-x1)*y1
end;
write('Прямоугольники пересекаются, площадь пересечения=',s:0:2);
end;
readln
end.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Другие предметы
-
alexaFat20.01.2023 19:54
-
228ie22830.03.2020 08:07
-
Yuran301.06.2020 04:33
-
qqqqq926.06.2021 18:03
-
лера2109123.12.2021 01:33
-
vika20092000105.05.2020 13:05
-
Kdjs19.08.2022 04:25
-
ABAYMALGAZHDAROvvv25.05.2022 06:32
-
bbcc207.02.2023 11:43
-
dianadobosh1305.05.2021 10:43
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.