Corso di Raku / Programmazione funzionale, concorrente, reattiva e web / Programmazione funzionale / Ricorsione / Una subroutine ricorsiva
Quiz — Ricorsione
Cosa stampa il programma seguente?
sub sum($n) {
$n <= 0 ?? 0 !! $n + sum($n - 1);
}
say sum(4);| 0 | 4 |
| 1 | 10 |
| 0 | 24 |
| 0 | 0 |
sum(4) è 4 + sum(3), che si srotola in
4 + 3 + 2 + 1, cioè 10. La ricorsione si ferma
al caso base, quando $n raggiunge 0.