W podanym zapisie funkcja jest zdefiniowana poprzez odwołanie do samej siebie: aby policzyć f(n), trzeba znać f(n-1). To jest właśnie rekurencja (definicja rekurencyjna). Jednocześnie podano przypadek bazowy (warunek stopu): "w przeciwnym wypadku f(n)=1", czyli dla n≤1. Bez takiego warunku rekurencja nie miałaby punktu zakończenia i prowadziłaby do nieskończonych wywołań.
Ten schemat jest klasyczny dla silni: n! spełnia zależność n! = n·(n−1)!, a 1! = 1. Dlatego wartości rosną jak iloczyn kolejnych liczb naturalnych.
Dlaczego pozostałe odpowiedzi są niepoprawne?
- "obliczania n–tej potęgi liczby n." – potęgowanie n^n nie wynika z relacji f(n)=n·f(n-1). Dla potęgowania typowy związek rekurencyjny miałby postać f(n)=n·f(n-1) tylko wtedy, gdy n jest stałą podstawą, a zmienia się wykładnik; tutaj n zmienia się w każdym kroku, więc to inny problem.
- "iteracji." – iteracja oznacza realizację powtórzeń pętlą (np. for/while). W treści nie ma pętli, tylko zależność od poprzedniego wywołania; to cecha rekurencji, nie iteracji. Co ważne, rekurencję da się często przepisać na iterację, ale nie są to pojęcia tożsame.
- "obliczania wyrazu ciągu Fibonacciego." – typowa definicja Fibonacciego odwołuje się do dwóch poprzednich wyrazów (np. F(n)=F(n-1)+F(n-2)) oraz ma dwa przypadki bazowe. W zadaniu występuje mnożenie przez n i tylko jedno odwołanie do n-1, więc to nie jest Fibonacci.
Wskazówka egzaminacyjna: gdy widzisz zapis f(n) zależne od f(n-1), f(n-2) itd. wraz z warunkiem dla małych n, najpierw rozpoznaj technikę (rekurencja), a dopiero potem kojarz ją z konkretnym przykładem (np. silnia).