Алгоритм Евклида

s_S_s

Турист
Регистрация
15 Июл 2006
Сообщения
42
Реакции
0
Credits
66
Здравствуйте!
Вот такое задание у меня опять. Пожалуйсто помогите, за ранее благодарен:
Алгоритм Евклида нахождение наибольшего общего делителя (НОД) неотрицательных чисел основан на следующих свойчтвах этой величины. Пусть m и n одновременно не равные нулю целые не отрицательные числа и пусть m>=n. Тогда если n=0, то НОД(m и n)=m, a если n неравно 0, то для чисел m, n и r, Где r-остаток от деления m на n, выполняется равенство НОД(n,r). Например, НОД (15,6)=НОД(6,3)=НОД(3,0)=3


как это все в программный код превратить?
 

ZeVS

Специалист
Местный
Регистрация
2 Окт 2005
Сообщения
220
Реакции
77
Credits
10
Рекурсия, т.е. вызов функцией самой себя. Pascal-код:

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