導入
条件が続くあいだくり返すのが while、決まった回数なら C言語形式の for が使えます。「〜になるまで」の until もあります。
説明
while (条件) { ... } は、条件が真のあいだくり返します。中で条件を変えないと無限ループになるので注意します(この学習用エンジンには安全のため上限があり、暴走しても自動で止まります)。
use strict;
use warnings;
my $i = 1;
while ($i <= 5) {
print $i, " ";
$i++; # これを忘れると無限ループ
}
print "\n"; # 1 2 3 4 5
until (条件) は「条件が真になるまで」くり返します(while (!条件) と同じ)。C言語形式の for (初期化; 条件; 更新) も使えます。
use strict;
use warnings;
for (my $i = 0; $i < 5; $i++) {
print $i;
}
print "\n"; # 01234
my $count = 3;
until ($count == 0) {
print "残り $count\n";
$count--;
}
やってみよう
while の条件や for の範囲を変えて、くり返し回数が変わることを確かめましょう。
演習
while を使って、1 から 10 までの合計を求めて表示してください(結果は 55)。
ヒント1を見る
my $sum = 0; my $i = 1; while ($i <= 10) { $sum += $i; $i++; } のあと print "$sum\n";。