Составьте программу нахождения наибольшего общего делителя трех чисел, используя...

0 голосов
96 просмотров

Составьте программу нахождения наибольшего общего делителя трех чисел, используя следующую формулу:
НОД(А, B, С) = НОД(НОД(A, В), С).

Испоьзуя алгоритм Евклида


Информатика (30 баллов) | 96 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Var
    a, b, c: longint;

function nod(a, b: longint): longint;
begin
    a := abs(a);
    b := abs(b);
    if a * b = 0 then nod := 1
    else begin
        while a <> b do
            if a > b then
                a := a - b
            else
                b := b - a;
        nod := a;
    end;
end;

begin
    read(a, b, c);
    writeln(nod(nod(a, b), c));
end.

(55.0k баллов)