Предмет: Информатика, автор: msodintsova4

Помогите пожалуйста! (Не шарю вообще)
"Составьте программу сложения двух простых дробей. Результат должен быть несократимой дробью. Используйте подпрограмму вычисления НОД по алгоритму Евклида. Простая дробь задаётся двумя числами: числителем и знаменателем".
Очень прошу.


Lenofag: Какой язык программирования
msodintsova4: Паскаль
msodintsova4: ABC
Lenofag: Если Дима Коновалов не справится, напишу
msodintsova4: Рада снова Вас здесь видеть.
dimakonovalov2: написал)
dimakonovalov2: это 8 - 9 класс)
msodintsova4: Так может вы поможете, если видите, что человек не справляется и не понимает? Вам, как мне кажется, это нетрудно.

Ответы

Автор ответа: AnonimusPro
24
Program nd;
function nod(n,m: integer): integer;
begin
while(n<>0) and (m<>0) do
begin
if n>=m then n:=n mod m else m:=m mod n;
end;
nod:=m+n;
end;
var m1,m2,n1,n2,t: integer;
begin
write('введите числитель и знаменатель 1 дроби через пробел: ');
readln(m1,n1);
write('введите числитель и знаменатель 2 дроби через пробел: ');
readln(m2,n2);
t:=nod(n2*m1+m2*n1,n1*n2);
write(m1,'/',n1,' + ',m2,'/',n2,' = ',(n2*m1+m2*n1) div t,'/',(n1*n2) div t);
end.

srzontmp: введите числитель и знаменатель 1 дроби через пробел: 3 4
введите числитель и знаменатель 2 дроби через пробел: 5 4
3/4 + 5/4 = 2/1
srzontmp: При вводе введите числитель и знаменатель 1 дроби через пробел: 2 3
введите числитель и знаменатель 2 дроби через пробел: -4 3
программа зацикливается
Похожие вопросы
Предмет: Обществознание, автор: Виктория1234567899