Budowanie funkcji rekurencyjnej
Widziałeś już przykład iteracyjnej funkcji obliczającej silnię, którą można też zdefiniować rekurencyjnie. Teraz możesz sprawdzić swoją wiedzę o funkcjach rekurencyjnych, implementując właśnie taką wersję!
Dla przypomnienia: „silnia", zazwyczaj oznaczana symbolem !, to iloczyn wszystkich dodatnich liczb całkowitych od 1 do podanej wartości. Kilka przykładów:
- 1! = 1
- 2! = 1 * 2 = 2
- 3! = 1 * 2 * 3 = 6 … i tak dalej.
Pamiętaj, że 0! z definicji wynosi 1.
W pierwszym kroku zaimplementujesz „przypadek bazowy" silni, zwracając wartość n! dla najmniejszej wartości, dla której silnia jest zdefiniowana. W kolejnym kroku dodasz logikę wywołania funkcji rekurencyjnej wewnątrz niej samej.
To ćwiczenie jest częścią kursu
Koncepcje paradygmatów programowania
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
def recursive_factorial(n):
# Base case -- check base condition
if ____:
# Return appropriate value
return ____