Даны две дроби A/B и C/D (A,B,C,D натуральные числа). Составить программу для деления дроби на дробь.результат должен быть несократимой дробью — Pascal(Паскаль)

uses crt;
type
Natur = 1..high(longInt);{натуральные числа типа longint}
{ввод дробей}
procedure Vvod(var a,b,c,d:Natur);
var i:integer;
begin
writeln('Введите числители и знаменатели двух дробей ');
writeln(' Первая дробь:');
write('  числитель=');readln(a);
write('  знаменатель=');readln(b);
writeln(' Вторая дробь:');
write('  числитель=');readln(c);
write('  знаменатель=');readln(d);
clrscr;
end;
{нахождение НОД}
function Nod(a,b:integer):integer;
begin
while a<>b do
if a>b then a:=a-b else b:=b-a;
Nod:=a
End;
{сокращение дробей}
procedure Sokr(var a,b:Natur);
var d:Natur;
begin
d:=Nod(a,b);
a:=a div d;
b:=b div d;
end;
{вывод дробей и результата после сокращения на экран}
procedure Vyvod(a,b,c,d:Natur;var e,f:Natur);
begin
writeln('Результвт деления:');
e:=a*d;
f:=b*c;
Sokr(e,f);
writeln(a,'/',b,' : ',c,'/',d,' = ',e,'/',f);
end;
var  a,b,c,d,e,f:Natur;
     w:char;
begin
clrscr;
randomize;
writeln('Вводите пары дробей, окончание ввода Esc');
repeat
clrscr;
Vvod(a,b,c,d);
Vyvod(a,b,c,d,e,f);
readln;
writeln('Введите следующую дробь или Esc для выхода');
w:=readkey;
until w=#27;
end.

Leave a Comment

34 − 24 =