構文を覚えよう! (4/5)
作成:2011-01-15 10:37
更新:2017-06-03 11:56
更新:2017-06-03 11:56
■条件で繰り返すwhile文
続いて、もう1つの制御構文「繰り返し」に進みましょう。繰り返しは2つの構文が用意されています。1つ目は、条件を使って繰り返しをチェックする「while」構文というものです。
※while構文の基本形(1)
※while構文の基本形(2)
ここでも「条件」というのが登場しました。これは、ifで出てきた条件と同じです。つまり、「TrueかFalseか」をチェックするような式や変数・値ですね。
このwhile構文は、条件をチェックし、それがTrueである間は、その構文内の処理を繰り返し実行し続けます。そして条件がFalseになったら繰り返しを抜け、先へと進みます。もし、else:が用意されていたなら、繰り返しを抜ける際にこれを実行します。
下に、簡単なサンプルを掲載しておきましょう。1から変数xまでの合計を計算して表示するサンプルです。xの値を色々と変更して結果を確かめてみるとよいでしょう。
このサンプルでは、「while count <= x:」というようにしてwhileの条件を設定しています。つまり、contの値がxより小さいか等しい間繰り返しを続け、xより大きくなったら抜けるようにしているわけです。
ということは、当たり前ですが、「繰り返し実行する処理の中で、変数countの値が少しずつ大きくなるようにしないといけない」ことになります。でないと、whileからは永遠に抜け出せないことになってしまいます。これを「無限ループ」といいます。whileを使うときには、この無限ループに陥らないように、条件の内容と、その結果が繰り返しでどう変化していくかをよく考えておく必要があるでしょう。
※while構文の基本形(1)
while 条件 :
繰り返す処理……
※while構文の基本形(2)
while 条件 :
繰り返す処理……
else:
繰り返し終了時の処理……
ここでも「条件」というのが登場しました。これは、ifで出てきた条件と同じです。つまり、「TrueかFalseか」をチェックするような式や変数・値ですね。
このwhile構文は、条件をチェックし、それがTrueである間は、その構文内の処理を繰り返し実行し続けます。そして条件がFalseになったら繰り返しを抜け、先へと進みます。もし、else:が用意されていたなら、繰り返しを抜ける際にこれを実行します。
下に、簡単なサンプルを掲載しておきましょう。1から変数xまでの合計を計算して表示するサンプルです。xの値を色々と変更して結果を確かめてみるとよいでしょう。
このサンプルでは、「while count <= x:」というようにしてwhileの条件を設定しています。つまり、contの値がxより小さいか等しい間繰り返しを続け、xより大きくなったら抜けるようにしているわけです。
ということは、当たり前ですが、「繰り返し実行する処理の中で、変数countの値が少しずつ大きくなるようにしないといけない」ことになります。でないと、whileからは永遠に抜け出せないことになってしまいます。これを「無限ループ」といいます。whileを使うときには、この無限ループに陥らないように、条件の内容と、その結果が繰り返しでどう変化していくかをよく考えておく必要があるでしょう。
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
●プログラム・リスト●
x = 100 count = 1 total = 0 while count <= x: total = total + count count = count + 1 else: print(str(x) + "までの合計は、" + str(total)) print(".....end.")
※関連コンテンツ