Курс языка программирования Raku / Продвинутый уровень / Порядок выполнения / Фазеры блоков / Exercises / После каждого шага
Решение: После каждого шага
Вот возможное решение задачи.
Код
my $sum = 0;
for 1..3 {
NEXT say "sum so far: $sum";
$sum += $_;
}🦋 Исходный код можно найти в файле next-phaser.raku.
Вывод
sum so far: 1
sum so far: 3
sum so far: 6Комментарии
Фазер
NEXTнаписан первым, но выполняется в конце каждой итерации — после того как тело добавило текущее число к$sum.Поэтому после первого прохода
$sumравен1, после второго —3, а после третьего —6.NEXT— это аналог выполнения чего-либо между итерациями, в отличие отFIRST(один раз в начале) иLAST(один раз в конце).