Zpo-11-wyk-Slajd57

Z Studia Informatyczne
Wersja z dnia 17:38, 4 lis 2006 autorstwa Bwalter (dyskusja | edycje)
(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)
Przejdź do nawigacjiPrzejdź do wyszukiwania

Replace Iteration with Recursion

Replace Iteration with Recursion


Przekształcenie odwrotne jest wykonywane w nielicznych przypadkach, w których zapis iteracyjny jest trudniej zrozumiały niż rekurencyjny. Celem jest zatem zamiana iteracji w rekurencję.

Pierwszym krokiem przekształcenia jest identyfikacja głównej pętli, wewnątrz której modyfikowana jest jedna lub kilka zmiennych lokalnych wpływających na wynik metody. Warto wówczas rozważyć wyłączenie pętli do odrębnej metody. Następnie pętla jest zastępowana wyrażeniem warunkowym, które zachowuje się identycznie jak pętla i sprawdza warunek kontynuacji pętli. Jeżeli warunek ten jest spełniony, wówczas zwracany jest wynik końcowy metody, natomiast w przeciwnym przypadku wywoływana jest rekurencyjnie ta sama metoda z parametrami zmienionymi zgodnie z postępem pętli.


<< Poprzedni slajd | Spis treści | Następny slajd >>