Kurso de Raku / Aldono 🆕 / Fluo kaj funkcioj / Regofluo kaj logiko / Exercises / Sumu ĝis pli ol cent

Solvo: Sumu ĝis pli ol cent

Jen ebla solvo de la tasko.

Kodo

my $sum = 0;
my $n   = 0;

loop {
    $n++;
    $sum += $n;
    last if $sum > 100;
}

say "reached $sum after adding 1..$n";

🦋 Vi povas trovi la fontkodon en la dosiero sum-until.raku.

Eligo

reached 105 after adding 1..14

Komentoj

  1. Nuda loop { } ripetiĝas eterne; la last if $sum > 100 estas tio, kio finas ĝin, tuj kiam la sumo transiras la sojlon.

  2. 1 + 2 + … + 14 estas 105, la unua parta sumo super 100, do la buklo haltas kun $n je 14.

  3. Vi povas kontroli tiun sumon per redukto:

    say [+] 1..14; # 105

Kursa navigado

Sumu ĝis pli ol cent   |   Subprogramoj kaj funkcia stilo