ALG7

ALG7



2.4. Niebezpieczeństwa rekurencji 37

return (x-10);

else

return MacCarthy(MacCarthy(x111});

1

Już na pierwszy nawet rzut oka widać, że funkcja jest jakaś „dziwna”. Kto potrafi powiedzieć w przybliżeniu, jak się przedstawia jej ilość wywołań w zależności od parametru ,v podanego w wywołaniu? Chyba niewielu byłoby w stanie od razu powiedzieć, że zależność ta ma postać przedstawioną na wykresie z rysunku 2-4...

Nie było to wcale takie oczywiste, prawda?

Ćwicz. 2-1

Proszę dokładnie zbadać funkcję MacCarthy’ego w większym przedziale liczbowym, niż ten na rysunku. Jakich niebezpieczeństw można się doszukać?

n


Rys. 2-4.

Ilość wywołań funkcji MacCarthy ego w zależności od parametru wywołania.

2.5. Pułapek ciąg dalszy

Jakby nie dość było negatywnych stron programów rckurcncyjnych, należy jeszcze dorzucić te, które nie wynikają z samej natury rekurencji, lecz raczej z błędów programisty. Być może warto w' tym miejscu podkreślić, iż omawianie „ciemnych stron” rekurencji nie ma na celu zniechęcenia Czytelnika do jej stosowania! Chodzi raczej o wskazanie typowych pułapek i sposobów ich omijania - a te ostatecznie istnieją zawsze (pod warunkiem, że wiemy CO omijać). Zapraszam zatem do lektury następnych paragrafów...


Wyszukiwarka

Podobne podstrony:
ALG5 35 2.4. Niebezpieczeństwa rekurencji2.4.1.Ciąg Fibonacciego Naszym pierwszym zadaniem jest nap
ALG7 2.9. Zadania 472.9.Zadania Wybór reprezentatywnego dla rekurencji zestawu zadań wcale nie był
ALG 7 5.1. Listy jednokierunkowe 97 public: int pusta()    // czy lista jest pusta? {
zz17 Mikołaj z workiem w ramce strona 10
skanuj0053 (37) yRozdział 10. Wybrane choroby alergiczne 219 2.    Dieta bogata w kon
- 37 - LaSI 10 aa bonhommie,l1 amour qu il porte k Saint-Antonin et a aux Saint-ftitoninoia. a • Com
17 3.1. Warunki wytrzymałościowe 37 jak w przypadku pręta rozciąganego. Jeśli, wskutek ukształtowan
Chemia fizyczna - termodynamika molekularna 2009/2010 37 Wykład 10 11.12.2009 1. Równania stanu w te
pomiary zamrazanie ~7 16,711,2 23 8 ,3 5 $ r * Cif <o 5, T *■ A/b- 10, f -o, 6 4^
68246 mikroekonomia ćwiczenia (37) Ą MIK 10 BtCOUOMIft- ~ cu czeioicx ~ fi^ouuc^cc) cu " oLy f

więcej podobnych podstron