Raku-Kurs / Fortgeschritten / Operatoren / Meta-Operatoren / Exercises / Jede Fakultät auf einmal

Lösung: Jede Fakultät auf einmal

Hier ist eine mögliche Lösung der Aufgabe.

Code

say [\*] 1..6;

🦋 Den Quellcode finden Sie in der Datei factorial.raku.

Ausgabe

(1 2 6 24 120 720)

Kommentare

  1. Der Backslash innerhalb der Klammern verwandelt [*] in eine dreieckige Reduktion. Anstatt die Liste auf einen einzelnen Wert zusammenzufassen, behält sie jedes Teilprodukt: 1, dann 1*2, dann 1*2*3, und so weiter.

  2. Jedes Teilprodukt 1*2*...*k ist genau k!, sodass das Ergebnis die Liste der Fakultäten von 1 bis 6 ist. Ein einfaches [*] 1..6 hätte nur das letzte davon ergeben, nämlich 720.

Kursnavigation

Jede Fakultät auf einmal   |   Eine URL bauen