Курс Raku / Додаток 🆕 / Порядок виконання та функції / Порядок виконання та логіка / Вправи / Сума, поки не більше ста

Розв’язання: Сума, поки не більше ста

Ось одне з можливих розв’язань задачі.

Код

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

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

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

🦋 Знайдіть програму у файлі sum-until.raku.

Вивід

reached 105 after adding 1..14

Коментарі

  1. Голий loop { } повторюється вічно; завершує його саме last if $sum > 100, щойно сума переходить поріг.

  2. 1 + 2 + … + 14 дорівнює 105 — першій частковій сумі понад 100, — тож цикл зупиняється, коли $n дорівнює 14.

  3. Цю суму можна перевірити згорткою:

    say [+] 1..14; # 105

Навігація курсом

Сума, поки не більше ста   |   Підпрограми та функційний стиль