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

s_S_s

Member
Joined
Jul 15, 2006
Messages
42
Reaction score
0
Age
41
Location
Астана
Здравствуйте!
Вот такое задание у меня опять. Пожалуйсто помогите, за ранее благодарен:
Алгоритм Евклида нахождение наибольшего общего делителя (НОД) неотрицательных чисел основан на следующих свойчтвах этой величины. Пусть 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

Member
Joined
Oct 2, 2005
Messages
220
Reaction score
77
Age
21
Рекурсия, т.е. вызов функцией самой себя. Pascal-код:

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