Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
 Аватар для Collide
6 / 6 / 5
Регистрация: 02.11.2011
Сообщений: 36

Нужно переделать программу, легкое дело :)

04.11.2011, 20:30. Показов 817. Ответов 4
Метки нет (Все метки)

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

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
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>x3>=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;
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.11.2011, 20:30
Ответы с готовыми решениями:

Нужно переделать программу
Я написал программу, которая вычисляет, является ли строка палиндромом (Программа удаляет из строки пробелы и переводит все символы в...

Нужно переделать программу из C++ в C
Вот собственно и она. Заранее благодарен #include &lt;iostream&gt; using namespace std; int main() { const int m = 4 , n...

Нужно переделать программу с С++ в СИ
Помогите, пожалуйста переделать этот код на язык СИ. Программа работает , но нельзя сдать, тк написана на С++. #define...

4
 Аватар для Small Lamer
143 / 143 / 141
Регистрация: 05.04.2011
Сообщений: 270
04.11.2011, 22:46
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
Uses math;
type m1=record
    x,y,x1,y1:longint;
end;
var n,i,p1,p2,v1,v2:longint;
    a:array[1..2] of m1;
 
function Check(T:m1):m1;
var b:m1;
begin
    
    b.x:=min(t.x,t.x1);
    b.x1:=max(t.x,t.x1);
    b.y:=min(t.y,t.y1);
    b.y1:=max(t.y,t.y1);
    check:=b;
end;
 
begin
 
        readln(a[1].x,a[1].y,a[1].x1,a[1].y1);
        a[1]:=Check(a[1]);
        p1:=a[1].x;
        p2:=a[1].y;
        v1:=a[1].x1;
        v2:=a[1].y1;
 
        readln(a[2].X,a[2].Y,a[2].X1,a[2].Y1);
        a[2]:=check(a[2]);
        p1:=max(p1,a[2].x);
        P2:=max(p2,a[2].y);
        v1:=min(v1,a[2].x1);
        v2:=min(v2,a[2].y1);
 
        for i:=1 to 2 do
        if (p1<a[i].x)or(p1>a[i].x1) then begin
            writeln(0);
            halt;
        end
        else
        if (p2<a[i].y)or(p2>a[i].y1) then begin
            writeln(0);
            halt;
        end;
 
   writeln(abs(p1-v1)*abs(p2-v2));
end.
1
 Аватар для Collide
6 / 6 / 5
Регистрация: 02.11.2011
Сообщений: 36
04.11.2011, 23:41  [ТС]
Цитата Сообщение от Small Lamer Посмотреть сообщение
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
Uses math;
type m1=record
    x,y,x1,y1:longint;
end;
var n,i,p1,p2,v1,v2:longint;
    a:array[1..2] of m1;
 
function Check(T:m1):m1;
var b:m1;
begin
    
    b.x:=min(t.x,t.x1);
    b.x1:=max(t.x,t.x1);
    b.y:=min(t.y,t.y1);
    b.y1:=max(t.y,t.y1);
    check:=b;
end;
 
begin
 
        readln(a[1].x,a[1].y,a[1].x1,a[1].y1);
        a[1]:=Check(a[1]);
        p1:=a[1].x;
        p2:=a[1].y;
        v1:=a[1].x1;
        v2:=a[1].y1;
 
        readln(a[2].X,a[2].Y,a[2].X1,a[2].Y1);
        a[2]:=check(a[2]);
        p1:=max(p1,a[2].x);
        P2:=max(p2,a[2].y);
        v1:=min(v1,a[2].x1);
        v2:=min(v2,a[2].y1);
 
        for i:=1 to 2 do
        if (p1<a[i].x)or(p1>a[i].x1) then begin
            writeln(0);
            halt;
        end
        else
        if (p2<a[i].y)or(p2>a[i].y1) then begin
            writeln(0);
            halt;
        end;
 
   writeln(abs(p1-v1)*abs(p2-v2));
end.
Спасибо большое. Но не могли бы Вы упростить программу, чтобы без "uses match" и типов "record".
0
 Аватар для Small Lamer
143 / 143 / 141
Регистрация: 05.04.2011
Сообщений: 270
04.11.2011, 23:42
Нет , мне лень...
1
 Аватар для Collide
6 / 6 / 5
Регистрация: 02.11.2011
Сообщений: 36
05.11.2011, 10:45  [ТС]
Цитата Сообщение от Small Lamer Посмотреть сообщение
Нет , мне лень...
С "uses match" я разобрался, убери record хотя бы, или объясни что это за записи.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
05.11.2011, 10:45
Помогаю со студенческими работами здесь

Нужно переделать программу
Нужно сделать такую программу только через функции. #include #include int main(){ double xn,xk,dx,a,c,f=0; ...

Программу С++ нужно переделать в С
#include &lt;iostream&gt; #include &lt;string&gt; #include &lt;cctype&gt; int main() { std::string str ; std::getline ( std::cin ,...

Нужно переделать программу
Нужно переделать. Условие задачи : Сделайте, какой можете 1-С массивами RECORD, процедурами, текстовыми и типизированными файлами...

Нужно переделать программу с СИ на С++
#include &lt;iostream&gt; using namespace std; int main() { int N; //srand(time(NULL)); cout &lt;&lt; &quot;Please, enter the size of...

Нужно программу на Паскале переделать в программу на С++
Помогите, пожалуйста!!! У меня есть программа на Паскале , а нужно ее переписать, чтобы она была на С++ (windows консоль). Текст...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru