Составьте программу нахождения наибольшего общего делителя трех чисел, используя следующую формулу:
НОД(А, B, С) = НОД(НОД(A, В), С).
Испоьзуя алгоритм Евклида
Ответы
Ответ дал:
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.
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.
Похожие вопросы
2 года назад
2 года назад
7 лет назад
7 лет назад
10 лет назад
10 лет назад
10 лет назад