Processing プログラミング 初心者向け

プログラミングの最強ツール!繰り返し処理!(for、while文)

今回やること

今回はプログラミングの最強のツールである「繰り返し」処理について解説します!
繰り返し処理とは文字通り、ある処理を指定条件の数繰り返して処理をすることです。

今回のポイント

今回のポイントは以下の3つです!

  • for文の処理の書き方
  • while文の処理の書き方
  • 繰り返し処理の注意点
投稿主
投稿主

ではいきましょう!

for文

for文の構文

繰り返し処理をする方法の一つにfor文があります。
for文の書き方はプログラミング言語によって大きく変わることもありますが、基本的な考え方は同じです。
Processing、(C,Java系)では以下のように書きます。

for (最初の処理 ; 条件式 ; 繰り返し毎に最後に行う処理) {
 //繰り返し行う処理
}

説明を見るより具体例を見てみましょう!

for文の具体例

以下は1~5までの平方数を表示するプログラムです。

for文具体例

一つずつ解説していきます!

最初の処理

int i = 1 の部分は、「最初の処理」となります。
初期の処理はfor文の中身が実行される前に一度だけ処理される部分です。

int I = 1と書き、繰り返し用の変数を新たに宣言しています。
この時宣言した変数は、for文の中では使えますが、for文の外だと使えない。という点に注意です。(変数のスコープ)

新たに宣言しなくても、あらかじめ宣言していた変数を使うことももちろん可能です。
iである必要や、一文字である必要もありません。

条件式

繰り返し処理において、無限回繰り返すわけにもいかないので、どこかで終わらせる必要があります。
繰り返し処理では、基本的に条件式が真である間に繰り返しの処理を行います。

つまり、条件式が偽になれば終了です。

この具体例では、 i <= 5 、つまり、iが5以下の時は繰り返しを続行して、
I が6以上になった時に、繰り返しの処理は終了となります。

繰り返し毎の最後に行う処理

i++ と記述している部分は繰り返しの1サイクルが終わった時に行われる処理です。
この具体例では、繰り返しの1サイクル終了時に、iを1ずつ増やす。という処理をしています。

なので、繰り返しの回数だけiを増やしていき、いずれは条件が偽になるので、どこかで終了する。
といった動きになります。

for文の処理の流れ

改めてfor文の繰り返し処理の順番を整理しましょう!
以下はフローチャートです。

forループアルゴリズム

流れは分かりましたでしょうか?
改めて具体例と照らし合わせてfor文の使い方を理解してみてくださいね!

while文

繰り返しのもう一つの書き方として有名なのは、while文です。
while文は非常にシンプルな書き方になっています!

while(条件式) {
  //繰り返したい処理
}

while文はシンプルで、条件が真なら繰り返す。というものになっています。
具体例を見ていきましょう!

while文の具体例

以下は上記のfor文と同じく、1~5までの数の平方数を表示するプログラムです。

while文基本例

while文は非常にシンプルですが、for文と違って
繰り返し用に新たに変数を宣言できなかったり、
繰り返しの1サイクルごとの処理を書き忘れてしまったり、というのがあるのでfor文との優劣はつけにくいです。

個人的には、while文は1サイクル毎の処理が複雑であったりした場合に使うようにしています!

繰り返し処理の注意点

処理が無限に続いてしまう??

for文、while文に限らず、繰り返し処理は、条件式の真偽で繰り返しを続行するか、中断するか判断されます。
なので、条件式が絶対に真にならない条件式を入れてしまうと、無限に繰り返しが行われます。

あえてそのようにさせる処理もありますが、基本的に無限に続く繰り返しというのは御法度です。

繰り返しの記述は強力な分、PCにかかる負担も増えるので、繰り返しの際は注意する必要があります。

個人開発程度のレベルではそこまで影響はありませんが、チーム開発レベルになるとPCが重くなってフリーズしたりする可能性があります。

なので終了条件はプログラムを実行する前にきちんと確認しましょう

まとめ

今回は繰り返し処理として、for文とwhile文に関して説明を行いました。

早速今回のポイントをおさらいしてみましょう!

ポイント

  • for (初期の処理 ; 条件式 ; 繰り返し毎の最後に行う処理 ){ }
  • while(条件式){ }
  • 終了条件は要確認!

いかがでしたでしょうか?

次回は、繰り返し処理の発展的な内容として、for文のネストや、繰り返し処理を途中で中断する方法について解説します!

投稿主
投稿主

Take It easy!
お疲れ様でした ♪

  • この記事を書いた人
  • 最新記事
投稿主

TAKE

こんにちは!ITエンジニアのTAKEです!
20代前半。社会人2年目です!
このブログは
「Take it easy!Take IT Breezy!」
をテーマにして 初学者でも気軽に読めるように
IT関連の情報を展開しています!

-Processing, プログラミング, 初心者向け