Python勉強会 はじめてのWhile文を怖がらずに学ぼう ~制御構文編③~

どうも!リョクちゃです。

前回はfor文について、触れました。

VB.Netと比較して触れたことで、どんなものかわかったかと思います。
( 自己記録用と言いながら、ざっくり勉強になってしまってます……(-_-;) )

さて、今回は、前回触れることができなかった”while”文について触れていきます。
簡単にイメージだけでもつかんでもらえたらなと思います。

ちなみに前回の記事は、こちら

前回は、条件分岐のif文について触れていきました。 今回は、第2弾として繰り返し処理のfor文とwhile文について触れていきます。 ...

目次

スポンサーリンク




while文

構文は下のようになります。

条件式が真(True)か偽(False)となる式を記述し、
結果がTrueなら(または、Trueの間)は処理が繰り返され、

一方でFalseならWhileを抜けます。
最初からFalseの場合は、処理は実行されません。
※ 末尾の:(コロン)を忘れずに……。

例として、変数xを1から1つずつ足していき、10になるまで
足した結果を出力し続けてください。

望む結果としては、1,2,3,4,5,……,10になれば良いことになります。
この例を構文に当てはめて記述すると、

これを実行すると、1~10までそれぞれ出力がされます。
また、例をフローチャートで書いてみると下のような感じになります。

無限ループ

Whileループを無限にループさせたい場合は、下のように記述します。

条件式をTrueとすることで延々と処理を繰り返します。
これを抜ける場合は、for文でも使った”break”を使います。

※break文を使わないと強制終了をしなくてはならないので注意が必要です。
以下、例を含めて書くと

変数xが5になると、while文を抜けるといった処理になります。

まとめ

2回にわたって繰り返し処理について触れてきましたが、ここで簡単にまとめておきます。

  • for文  あるシーケンス型のアイテム一つ一つに対して処理を行います。
  • while文 条件が”真”の間、処理を繰り返し行います。

必要に応じて使い分けて下さい。

練習問題

① 1~50までを足した総和を求め、出力してください。
→ 1 + 2+ 3 +……+50

② 1~50までを繰り返し、奇数のときは出力し、
偶数の時は出力しないように処理を書いてください。
→ 1, 3, 5, ……, 49

回答

おわりに

今回で、制御構文編はおわりとなります。
簡単にざっくりと触れてきましたが、なんとなくイメージつかめてもらえたら嬉しいです。

筆者ももっと勉強してうまく伝えられるようにならねば……

状況に応じてWhileやForを使い分けれるようになれるといいですね。

ハードウェア制御だと、Whileがよくつかわれるのかな……?

最後までお読みいただきありがとうございます。

スポンサーリンク




スポンサーリンク
スポンサーリンク