Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - Помогите перевести из паскаля в си

Ответить
Настройки темы
C/C++ - Помогите перевести из паскаля в си

Новый участник


Сообщения: 1
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


uses crt;
type prm=record {прямая с полями, коэффициентами}
a,b,c:real;
end;
tch=record {точка с полями, координатами}
x,y:real;
end;
{процедура вычисления точки пересечения 2х прямых}
procedure Peres2(a,b:prm; var t:tch);
begin
t.x:=(b.c*a.b-a.c*b.b)/(a.a*b.b-a.b*b.a);
t.y:=(b.a*a.c-a.a*b.c)/(a.a*b.b-a.b*b.a);
end;
{функция проверки на пересечение}
function Prov(a,b:prm):boolean;
begin
Prov:=a.a*b.b-a.b*b.a<>0;
end;
{процедура ввода данных}
procedure Vvod(var a:prm;k:byte);
begin
repeat
writeln('Введите коэффициенты прямой ',k);
readln(a.a,a.b,a.c);
if(a.a=0)and(a.b=0)then writeln('Это не прямая, повторите ввод')
until(a.a<>0)or(a.b<>0);
a.c:=-a.c;{перенесем C в левую часть получим ax+by+c=0}
end;
var a,b,c:prm;
m12,m13,m23:tch;
s:real;
begin
clrscr;
Vvod(a,1);
Vvod(b,2);
Vvod(c,3);
if not Prov(a,b)or not Prov(a,c)or not Prov(b,c) then
begin
write('Прямые попарно не пересекаются');
readln;
exit
end;
Peres2(a,b,m12);
Peres2(a,c,m13);
Peres2(b,c,m23);
writeln('Точка пересечения 1-2: ',m12.x:5:2,';',m12.y:5:2);
writeln('Точка пересечения 1-3: ',m13.x:5:2,';',m13.y:5:2);
writeln('Точка пересечения 2-3: ',m23.x:5:2,';',m23.y:5:2);
s:=abs(m12.x*(m23.y-m13.y)+m23.x*(m13.y-m12.y)+m13.x*(m13.y-m23.y))/2;
write('Площадь треугольника пересечений=',s:0:2);
readln
end.

Отправлено: 23:34, 06-06-2017

 

Ветеран


Сообщения: 3806
Благодарности: 824

Профиль | Отправить PM | Цитировать


Миша_Гришин@vk, так с чем конкретно сложности?

Помогите перевести и сделайте всё за меня - это не одно и то же.

Отправлено: 16:06, 07-06-2017 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - Помогите перевести из паскаля в си

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
C/C++ - Помогите ,пожалуйста, перевости код паскаля на язык си.Не могу разобраться в этом vad91996 Программирование и базы данных 1 21-09-2014 15:59
Помогите пожалуйста перевести код с паскаля на язык си vad91996 Тест-форум 0 21-09-2014 14:28
C/C++ - пожалуйста, помогите перевести этот код из паскаля в с++ Киры4 Программирование и базы данных 2 29-05-2013 16:19
C/C++ - Помогите перевести с Паскаль в Си KISA713 Программирование и базы данных 4 04-03-2013 19:47
C/C++ - Помогите перевести прогу с паскаля на Си Lesha_dan Программирование и базы данных 6 14-12-2011 22:02




 
Переход