Задать вопрос
27 мая, 03:11

Напишите функцию, которая вычисляет наибольший общий делитель двух чисел

+1
Ответы (1)
  1. 27 мая, 04:56
    0
    Function NOD (a, b: Integer) : Integer;

    Var tmp, r: Integer;

    Begin

    If b > a Then

    Begin

    tmp : = a;

    a : = b;

    b : = tmp;

    End;

    tmp : = a;

    While tmp > 0 Do

    Begin

    Result : = tmp;

    tmp : = tmp - b;

    End;

    End;

    Пример программы с использованием данной функции:

    Program Example;

    Var a, b: Integer;

    Function NOD (a, b: Integer) : Integer;

    Var tmp, r: Integer;

    Begin

    If b > a Then

    Begin

    tmp : = a;

    a : = b;

    b : = tmp;

    End;

    tmp : = a;

    While tmp > 0 Do

    Begin

    Result : = tmp;

    tmp : = tmp - b;

    End;

    End;

    Begin

    Write ('a = ') ;

    ReadLn (a) ;

    Write ('b = ') ;

    ReadLn (b) ;

    Write ('НОД: ', NOD (a, b)) ;

    ReadLn;

    End.
Знаете ответ на вопрос?
Не уверены в ответе?
Правильный ответ на вопрос 👍 «Напишите функцию, которая вычисляет наибольший общий делитель двух чисел ...» по предмету 📗 Информатика. Развернутая система поиска нашего сайта обязательно приведёт вас к нужной информации. Как вариант - оцените ответы на похожие вопросы. Но если вдруг и это не помогло - задавайте свой вопрос знающим оппонентам, которые быстро дадут на него ответ!
Искать готовые ответы