Który blok kodu zawiera przykład użycia rekurencji?
Który blok kodu zawiera przykład użycia rekurencji?
Wyjaśnienie i uzasadnienie dydaktyczne
Poprawna odpowiedź: A (Blok 1)
Uzasadnienie i szersze wyjaśnienie:
Rekurencja (lub rekursja) to technika programistyczna, w której funkcja wywołuje samą siebie w swoim ciele. Kluczowe elementy funkcji rekurencyjnej to:
- Warunek bazowy (warunek stopu): Prosty przypadek, który kończy wywołania rekurencyjne (np.
if(a==1) return 1;). - Wywołanie rekurencyjne: Wywołanie tej samej funkcji z argumentem zmodyfikowanym tak, aby zbliżał się do warunku bazowego (np.
fn(a-1)).
- Blok 1: W linijce
return fn(a-1)+2;funkcjafnwywołuje samą siebie. Jest to więc klasyczny przykład rekurencji.
Dlaczego pozostałe odpowiedzi są nieprawidłowe?
- Blok 2:
return (a-1)+2;to zwykła operacja arytmetyczna. Funkcja nie wywołuje samej siebie. - Blok 3:
return fun(a-1)+2;– występuje tu literówka. Funkcja nazywa sięfn, a próbuje wywołać nieistniejącą funkcjęfun. To błąd składniowy, a nie rekurencja. - Blok 4:
return 2;– funkcja zwraca stałą wartość. Nie ma tu wywołania samej siebie.
Chcesz poćwiczyć całą kwalifikację INF.04?
Egzamin próbny na czas, nauka działami, losowe pytanie albo przegląd całej bazy — wszystko w przeglądarce i bez zakładania konta.
Pojęcia z tego pytania
- Rekurencja (Recursion)Technika programistyczna polegająca na wywoływaniu przez funkcję samej siebie w celu rozwiązania mniejszego podproblemu, wymagająca warunku stopu.
- Rekurencja (Rekursja)Technika programistyczna polegająca na bezpośrednim lub pośrednim wywoływaniu funkcji przez samą siebie, wymagająca określonego warunku bazowego (stopu) zapobiegającego przepełnieniu stosu.
- Funkcje, Metody i Przekazywanie ParametrówWydzielone, nazwane bloki kodu realizujące określone zadanie, przyjmujące parametry wejściowe i opcjonalnie zwracające wartość wyniku za pomocą instrukcji return.
Podobne pytania z działu „Reprezentacja algorytmow i notacje”
Ten sam obszar materiału z kwalifikacji INF.04. W całej bazie znajdziesz 13 pytań z tego działu.
- #101
Rezultatem wykonania przedstawionego fragmentu kodu jest wypisanie liczb z przedziału od 2 do 20, które są
- #108
Obiektowe podejście do rozwiązywania problemów obejmuje między innymi:
- #109
Przedstawiona metoda jest implementacją algorytmu
- #228
W wyniku wykonania przedstawionego kodu zostaną wypisane
- #281
Przedstawiona pętla operuje na zmiennej napisowej ciąg. Jej zadaniem jest