***HPクリエイターのためのCGI講座 第21回***
4.4 do...while/do...unti(ループ)

演習問題がここのページにあります。
今週中を目標に完成させてください。
(解答も同じページにありますが、まずは、自分自身でチャレンジしてくださいね)



whileやuntilと同じように条件を満足している間、プログラムを繰り返し実行します。
しかしwhileやuntilは、ループに入る直前に条件判定を行うのに対して、doループでは、ループの出口で条件判定を行います。
つまり、whileやuntilは、条件によっては、ループブロックのプログラムを一度も実行しない場合がありますが、doでは、必ず一度はループブロックのプログラムを実行します。


<do...while構文>
do{
    プログラムブロック(条件式がtrueの間、繰り返し実行される)
}while(条件式)
=例=
$a=10;
do{
    print $a;
# ループ毎に 10 9 8 7 6 5 4 3 2 1 0と順次出力
    $a--;
}while($a)
# $aが0以外のときにループする

$a=10;
do{
    print $a;
# 10 を出力して抜ける
    $a--;
}while($a > 100)

print $a; # 9 を出力する


<do...until構文>
do{
    プログラムブロック(条件式がfalseの間、繰り返し実行される)
}until(条件式)
=例=
$a=10;
do{
    print $a;
# ループ毎に 10 9 8 7 6 5 4 3 2 1 0と順次出力
    $a--;
}until(0 == $a)



演習プログラムの虫食いのところを、色々変えて確認してみてください。


********************************************************************************
講師:ALK alk@arkland.co.jp
運営:アークランド(株) http://www.arkland.co.jp