Raku kurss / Funkcionālā, paralēlā, reaktīvā un tīmekļa programmēšana / Funkcionālā programmēšana / Rekursija / Rekursīva apakšprogramma
Viktorīna — Rekursija
Ko izdrukā šī programma?
sub sum($n) {
$n <= 0 ?? 0 !! $n + sum($n - 1);
}
say sum(4);| 0 | 4 |
| 1 | 10 |
| 0 | 24 |
| 0 | 0 |
sum(4) ir 4 + sum(3), kas attinas par
4 + 3 + 2 + 1, tas ir, 10. Rekursija apstājas
pie bāzes gadījuma, kad $n sasniedz 0.