Muszę napisać program obliczający nwd za pomocą rekurencji. Prosiłbym, jeśli to możliwe, chociaż o proste wytłumaczenie logicznej struktyru rekurencji.
0
0
Generalnie rekurencja polega na tym, że funkcja odwołuje się do samej siebie dla innego argumentu. Na przykład, jak masz policzyć silnię, to możesz to zrobić tak:
function silnia(a: integer): real;
begin
if a<=1 then result:=1
else result:=silnia(a-1)*a;
end;
Oczywiście w tym przypadku jest to wysoce nieoptymalne, ale to taki prosty przykład. Generalnie wtedy powiedzmy silnia(4)=silnia(3)*4=(silnia(2)3)4=(silnia(1)2)34=1234.
0
algorytm Euklidesa... To powinno być gdzieś w serwisie.