Corso di Raku / Fondamenti / Fondamenti del controllo di flusso / Cicli / Exercises / Fattoriale
Soluzione: Fattoriale
Un fattoriale di N è un prodotto di numeri interi da 1
fino a e incluso N. Ad esempio, il fattoriale di 4 è 1 * 2
* 3 * 4 = 24.
Codice
my $n = 8;
my $f = 1;
$f *= $_ for 2..$n;
say $f;🦋 Trova il programma nel file factorial.raku.
Output
Esegui il programma alcune volte e prova diversi valori di
$n.
$ raku exercises/loops/factorial.raku
40320Commenti
Questo programma utilizza l’operatore *=, che è una
scorciatoia per la moltiplicazione con l’assegnazione:
$x *= $y è equivalente a $x = $x * $y.
Puoi usare un ciclo ‘completo’ invece di una forma postfissa:
my $n = 8;
my $f = 1;
for 2..$n -> $x {
$f *= $x;
}
say $f;Più su questo argomento
Torneremo su questo compito diverse volte. In questa parte del corso, risolveremo anche questo problema ricorsivamente.
Nella seconda parte del corso, impareremo a conoscere i cosiddetti
operatori di riduzione, che rendono la soluzione banale. Inoltre, ci
sarà un modo per definire un operatore personalizzato ! in
modo da poter scrivere $n! per calcolare un fattoriale.
Infine, ci sarà un’altra occasione per vedere una soluzione interessante
quando parleremo della clausola where.