Уровень B. Напишите процедуру, которая сокращает дробь вида M/N. Числитель и знамена
Уровень B. Напишите процедуру, которая сокращает дробь вида M/N. Числитель и знаменатель дроби передаются как изменяемые параметры
Пример:
Введите числитель и знаменатель дроби:
25 15
После сокращения: 5/3
Ответ(ы) на вопрос:
Гость
// PascalABC.NET 3.1, сборка 1200 от 13.03.2016
function gcd(a,b:integer):integer;
// Нахождение НОД
begin
while b<>0 do
begin
a:=a mod b;
var i:=b; b:=a; a:=i
end;
Result:=a
end;
procedure Shorter(var a,b:integer);
// "сокращатель" дроби
begin
var k:=gcd(a,b);
a:=a div k;
b:=b div k
end;
begin
var a,b:integer;
Writeln('Введите числитель и знаменатель дроби: ');
Read(a,b);
Write(a,'/',b,'='); Shorter(a,b); Writeln(a,'/',b)
end.
Тестовое решение:
Введите числитель и знаменатель дроби:
25 15
25/15=5/3
Не нашли ответ?
Похожие вопросы