Course of Raku / Essentials / Functions essentials / Creating and calling functions / Exercises / The value of e
Solution: The value of e
Disclaimer
In Raku, there is a built-in constant e that gives the
immediate answer to the task. The solution shown below is designed for
education.
Code
The formula in this task contains a factorial, and we already have at least two solutions to compute it (more to follow). The program below defines two functions: one to compute factorial, another one for the partial sum according to the formula.
As it is required that the function can be called with no arguments,
in which case it runs a predefined number of iterations, we can add a default value of the
parameter: sub e-approx($max = 100).
In the code, notice the similarities in how the result values are
accumulated in a postfix
for loop over a range.
Here is the solution:
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();🦋 Find the program in the file the-value-of-e.raku.
Output
With 10 and 100 iterations, we get the following results.
Additionally, try other values of $max.
$ raku exercises/functions/the-value-of-e.raku
2.7182818
2.718281828459045Course navigation
← The value of e | Quiz — Creating a function →
Translations of this page: English • Deutsch • Español • Italiano • Latviešu • Nederlands • Български • Русский • Українська