Составьте программу определяющую являеться ли дробь a/b сократимой
Составьте программу определяющую являеться ли дробь a/b сократимой
Ответ(ы) на вопрос:
Гость
// PascalABC.NET 3.0, сборка 1164 от 11.02.2016
function gcd(a,b:integer):integer;
// Нахождение НОД
var
i: longint;
begin
while b <> 0 do begin
a := a mod b;
i := b; b := a; a := i
end;
Result:=a
end;
begin
var a:=ReadInteger('a=');
var b:=ReadInteger('b=');
var nod:=gcd(a,b);
if nod>1 then
WritelnFormat('Дробь сократима: {0}/{1}={2}/{3}',
a,b,a div nod,b div nod)
else WritelnFormat('Дробь {0}/{1} несократима',a,b)
end.
Тестовое решение:
a= 23541
b= 335160
Дробь сократима: 23541/335160=59/840
Гость
Function NOD(a,b : Longint) : Longint;
Begin
If (a mod b)=0 then NOD:=b else Nod:=NOD(b,a mod b);
end;
Var a,b : Longint;
Begin
Write('Введите через пробел числители и знаменатель: ');Readln(a,b);
If NOD(a,b)=1 then Writeln('Дробь не сократима.')
else Writeln(a,'/',b,' = ',a div NOD(a,b),'/',b div NOD(a,b));
end.
Не нашли ответ?
Похожие вопросы