Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

infa_1 / 12.Примеры рекурсивных функций

..doc
Скачиваний:
32
Добавлен:
05.06.2015
Размер:
695.3 Кб
Скачать

12.Примеры рекурсивных функций:

Многие математические функции можно выразить рекурсивно:

Полином Лежандра:

Рекурсивным также является определение натуральных чисел:

1) 1 есть натуральное число

2) число, следующее за 1, есть натуральное число

Вычислить значение функции Аккермана:

function AKKERMAN (m, k: integer) integer

begin

if m=0 then AKKERMAN:=k+1

else if k=0 then AKKERMAN:=AKKERMAN (m-1, 1)

else

AKKERMAN:=AKKERMAN (m-1, AKKERMAN (m-1, 1)

end;

Числа Фибоначчи:

function fib (k: integer) integer;

begin

if (k=1) or (k=2) then

fib:=1;

else

if k>2 then

fib:=fib(k-2)+fib(k-1)

else

fib:=-1;

end;

Факториал:

function FAKT (N: integer) integer;

begin

if N=0 then FAKT:=1

else FAKT:=N*FAKT(N-1);

end;