条件分岐を追加する
offsetを修正するwhileループは良い出発点ですが、offsetが負の場合はどうなるでしょうか?offsetを-6で初期化する次のコードを実行してみましょう。
# Initialize offset
offset = -6
# Code the while loop
while offset != 0 :
print("correcting...")
offset = offset - 1
print(offset)
しかし、セッションは切断されてしまいます。offsetは実行のたびにさらに減少するため、whileループは止まりません。offset != 0がFalseと評価されることはなく、whileループは永遠に続きます。
whileループの中にif-else文を入れて、この問題を修正しましょう。
whileループの実行に時間がかかりすぎる場合や、セッションが期限切れになりそうな場合は、無限ループを作成してしまっている可能性があります。 特に、半角スペース4つまたは自動インデントを使ってループの中身をインデントすること、そしてループが停止するように条件を設定することを忘れないでください。
この演習はコースの一部です
Python中級
演習の手順
offsetを-6に初期化します。whileループの中で、if-else文を完成させます。offsetが0より大きい場合は、offsetを1減らします。- それ以外の場合は、
offsetを1増やします。
コードの実行に時間がかかりすぎる場合、またはセッションが期限切れになりそうな場合は、おそらくどこかに誤りがあります。コードを確認し、文offset != 0が最終的にFALSEと評価されるようにしてください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Initialize offset
offset = -6
# Code the while loop
while offset != 0 :
print("correcting...")
if ____ :
____
else :
____
print(offset)