Silnia rekurencyjnie

Rekurencja: silnia, potęga i algorytm Euklidesa - Algorytmy: zakres rozszerzony (Python)

**Rekurencja** to sposób rozwiązania, w którym funkcja wywołuje samą siebie dla mniejszego problemu. Silnię można zapisać tak: 0! = 1, a n! = n * (n - 1)!. Każda funkcja rekurencyjna potrzebuje **warunku końca** (tu n == 0), inaczej wywoływałaby się bez końca. Przejdź program przyciskiem **Krok** i obserwuj stos wywołań: każde wywołanie `factorial` czeka na wynik następnego.

def factorial(n):
    if n == 0:
        return 1
    return n * factorial(n - 1)


for n in range(6):
    print(n, factorial(n))

Ładowanie interaktywnego edytora... Jeśli się nie pojawi, włącz JavaScript.

Wszystkie lekcje kursu Algorytmy: zakres rozszerzony·Zaloguj się, aby zapisać postęp na koncie.