Raku kurss / Pamati / Funkciju izveide un izsaukšana / Vingrinājumi / e vērtība
Risinājums: e vērtība
Atruna
Raku valodā ir iebūvēta konstante e
, kas sniedz tūlītēju atbildi uz uzdevumu. Zemāk parādītais risinājums ir paredzēts izglītībai.
Kods
Uzdevuma formulā ir faktoriālis, un mums jau ir vismaz divi risinājumi, kā to aprēķināt (vairāk sekos). Zemāk esošā programma definē divas funkcijas: vienu faktoriāļa aprēķināšanai, otru daļējās summas aprēķināšanai saskaņā ar formulu.
Tā kā ir nepieciešams, lai funkciju varētu izsaukt bez argumentiem, šajā gadījumā tā veic iepriekš noteiktu iterāciju skaitu, mēs varam pievienot parametra noklusējuma vērtību: sub e-approx($max = 100)
.
Kodā pamaniet līdzības, kā rezultātu vērtības tiek uzkrātas postfix for
ciklā pār diapazonu.
Šeit ir risinājums:
sub factorial($n) {
my $f = 1;
$f *= $_ for 1..$n;
return $f;
}
sub e-approx($max = 100) {
my $e = 1;
$e += 1 / factorial($_) for 1..$max;
return $e;
}
say e-approx(10);
say e-approx();
🦋 Atrodiet programmu failā the-value-of-e.raku.
Izvade
Ar 10 un 100 iterācijām mēs iegūstam šādus rezultātus. Papildus izmēģiniet citas $max
vērtības.
$ raku exercises/functions/the-value-of-e.raku
2.7182818
2.718281828459045
Kursa navigācija
← Asociatīvie datu tipi / Hashes interpolācija | Vairāk par funkcijām →
Šī lapa ir automātiski tulkota ar ChatGPT 4o. Oriģinālais teksts angļu valodā.
Šīs lapas tulkojumi: English • Deutsch • Español • Italiano • Latviešu • Nederlands • Български • Русский • Українська