do-while
ループ
for
ループの章では、while
ループが実行される手順を確認した。
準備 条件チェック 実際の作業 反復 条件チェック 実際の作業 反復 ...
do-while
ループは、while
ループと非常に似ている。違いは、do-while
ループでは各反復の最後に条件チェックが行われるため、実際の処理が少なくとも1回実行される点だ。
準備 実際の作業 反復 状態確認 ← 反復の終了時 実際の作業 反復 状態確認 ← 反復の終了時 ...
例えば、ユーザーが数字を推測する次のプログラムでは、数字を比較するためにユーザーは少なくとも1回は推測しなければならないため、do-while
の方がより自然だ。
プログラムで使用されている関数uniform()
は、std.random
モジュールの一部だ。これは、指定された範囲の乱数を返す。上記のように使用すると、2番目の数は範囲外とみなされる。つまり、uniform()
はその呼び出しに対して101を返さない。
演習
同じゲームをプレイするプログラムを作成し、プログラムが推測を行うようにする。プログラムが正しく書かれている場合、ユーザーの数値を最大7回の試行で推測できるはずだ。