Zadanie 1: Funkcja rekurencyjna
Rekurencja, która odtwarza mnożenie pisemne: wyniki funkcji, głębokość rekurencji i liczba obrotów pętli.
Rozwiązujesz bez konta, a odpowiedzi sprawdza ten sam silnik co na platformie. Postęp i powtórki zapisują się dopiero po darmowej rejestracji.
Wyniki funkcji f(a, b)
Funkcje skróć, dopisz i ostatnia przyjmują nieujemną liczbę całkowitą x. skróć(x) usuwa najmniej znaczącą cyfrę zapisu dziesiętnego x (dla liczby jednocyfrowej daje 0), np. skróć(249) = 24, skróć(5) = 0. dopisz(x) dopisuje na końcu zapisu dziesiętnego cyfrę 0, np. dopisz(29) = 290, przy czym dopisz(0) = 0. ostatnia(x) daje wartość najmniej znaczącej cyfry x, np. ostatnia(307) = 7.
Dana jest funkcja f(a, b) dwóch nieujemnych liczb całkowitych. Uzupełnij ostatnią kolumnę tabeli: wpisz wynik funkcji f(a, b) dla podanych wartości argumentów.
| 1 | f(a, b): |
| 2 | jeżeli b = 0 |
| 3 | wynik 0 |
| 4 | zakończ |
| 5 | k <- ostatnia(b) |
| 6 | w <- f(a, skróć(b)) |
| 7 | w <- dopisz(w) |
| 8 | dopóki k > 0 powtarzaj |
| 9 | w <- w + a |
| 10 | k <- k - 1 |
| 11 | wynik w |
W każdej komórce wpisz samą liczbę.
| a | b | f(a, b) |
|---|---|---|
| 42 | 2 | |
| 4 | 125 | |
| 103 | 104 |
Do uzupełnienia: 3