Cursus Raku / Elementa / Positionalia data genera / Exercitationes / Litterare numerum
Solutio: Litterare numerum
Programma infra habet array inbuilt cum nominibus numerorum a 0 ad 20 et nominibus decadarum: 20, 30, etc. In catena conditionalium inspectionum, numerus distribuitur ad unam ex regulis scribendi.
Codex
my $n = @*ARGS[0];
my @nomina = <
zero unus duo tres quattuor quinque sex septem octo novem decem
undecim duodecim tredecim quattuordecim quindecim sedecim septendecim duodeviginti undeviginti viginti
triginta quadraginta quinquaginta sexaginta septuaginta octoginta nonaginta >;
if $n < 20 {
dic @nomina[$n];
}
elsif $n % 10 { # Numeri duo-digiti non-rotundi, e.g., 34
dic @nomina[$n / 10 + 18] ~ '-' ~ @nomina[$n % 10];
}
else { # Multipla 10, e.g., 50
dic @nomina[$n / 10 + 18];
}
🦋 Invenies programmatum in archivo spell-a-number.raku.
Exemplum
Curre programmatum aliquoties ut omnes tres ramos constructionis si
—sin
—aliter
inspicias.
$ raku exercises/positionals/spell-a-number.raku 5
quinque
$ raku exercises/positionals/spell-a-number.raku 12
duodecim
$ raku exercises/positionals/spell-a-number.raku 67
sexaginta-septem
$ raku exercises/positionals/spell-a-number.raku 80
octoginta
Cursus navigatio
← Typis variabiles / Allomorphes | Associativa data genera →
Haec pagina automatice translata est per ChatGPT 4o. Originalis Anglicus textus
Translationes huius paginae: English • Deutsch • Español • Italiano • Latviešu • Nederlands • Български • Русский • Українська