TablicaPro / karta pracy ucznia / CPP

Rekurencja w C++ — silnia, Fibonacci i wieże Hanoi ze śladem wywołań

Klasa: __________ Numer: __________ Data: __________

Pracuj w przygotowanym pliku. Po każdej zmianie zapisz go i sprawdź rezultat.

Kod do rozpoczęcia pracy

int silnia(int n) {
    if (n <= 1) {
        return 1;
    }
    return n * silnia(n - 1);
}

Zadanie 1

Napisz silniaZeSladem(n, poziom), która wypisuje wcięciem wywołania i wyniki; wywołaj dla 4.

Zadanie 2

Napisz fib, sumaCyfr i potega rekurencyjnie. Wypisz fib(10) z liczbą wywołań, sumę cyfr 12345 i 2^10.

Zadanie 3

Wypisz ruchy Hanoi dla 3 dysków i policz ruchy dla 3 oraz 10 dysków.

Sprawdź przed oddaniem

Zadanie 1: ślad i wynik 3 pkt; zadanie 2: trzy funkcje 3 pkt, liczba wywołań 1 pkt; zadanie 3: ruchy i liczniki 2 pkt; pytania kontrolne 1 pkt. Razem 10 pkt.

Jaką zmianę w kodzie potrafisz samodzielnie wyjaśnić?