В
Все
Х
Химия
В
Видео-ответы
А
Алгебра
Г
Геометрия
О
ОБЖ
Д
Другие предметы
У
Українська література
Р
Русский язык
Б
Беларуская мова
У
Українська мова
Э
Экономика
Ф
Физика
М
Математика
Ф
Французский язык
Г
География
И
Информатика
М
МХК
О
Окружающий мир
П
Психология
Н
Немецкий язык
О
Обществознание
П
Право
И
История
М
Музыка
Л
Литература
Қ
Қазақ тiлi
Б
Биология
А
Английский язык
aguscov
aguscov
21.02.2020 21:38 •  Информатика

Напишите процедуру, которая сокращает дробь вида m/n. числитель и знаменатель дроби как изменяемые параметры. пример: введите числитель и знаменатель дроби: 25 15 после сокращения: 5/3

Ответ:
marinaozerova3
marinaozerova3
03.07.2020 20:26
Var
    a, b: integer;

function greatest_common_divisor(m, n: integer): integer;
var
    modulo: integer;
begin
    modulo := m mod n;
    if modulo = 0 then
        greatest_common_divisor := n
    else
        greatest_common_divisor := greatest_common_divisor(n, modulo)
end;

procedure reduce_the_fraction(a, b: integer);
var
    gcd: integer;
    sign: string;
begin
    gcd := greatest_common_divisor(a, b);
    if a * b < 0 then
        sign := '-';
    writeln(sign, abs(a) / gcd, '/', abs(b) / gcd);
end;

begin
    write('Enter two numbers: ');
    readln(a, b);
    reduce_the_fraction(a, b);
end.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?