Помогите пожалуйста! (Не шарю вообще)
"Составьте программу сложения двух простых дробей. Результат должен быть несократимой дробью. Используйте подпрограмму вычисления НОД по алгоритму Евклида. Простая дробь задаётся двумя числами: числителем и знаменателем".
Очень прошу.
Answers & Comments
Verified answer
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.
введите числитель и знаменатель 2 дроби через пробел: 5 4
3/4 + 5/4 = 2/1
введите числитель и знаменатель 2 дроби через пробел: -4 3
программа зацикливается