こんにちは、めのんです!
今回はwhileを使った繰り返しの処理を見ていきます。
こういった繰り返しのことを「ループ」といいます。
whileの基本
whileは指定した条件が満たされる間、何らかの処理を繰り返します。
まずは実際のコードを見ていきましょう。
最初にint型の変数「i」を用意して初期値を0にします。
そのあとのwhileでは、iが10より小さい間、波括弧内の処理を繰り返すようになっています。
波括弧内の処理は、とりあえずiの値を出力することにしましょう。
最後にiをインクリメントして1ずつ増やします。
それではこれをコンパイルして実行してみます。
何が起きているのか、順を追ってみていきます。
最初、変数iの値は0ですので、i < 10の条件を満たしていますから波括弧内の処理が実行されます。
iの値が出力されて、インクリメントされた結果iの値は1になります。
次にまたi < 10を判定しますが、まだ条件を満たしていますので、また波括弧内が実行されます。
これをどんどん繰り返して、変数iが10になったとき、やっと条件を満たさなくなって繰り返しは終了します。
直前の9まで出力されていますので、0から9が順に出力されたことになります。
doの基本
whileによく似た構文でdoというのもあります。
こちらも見ていきましょう。
ご覧のように条件をあとに書いています。
doも先ほどのwhileと似た流れになるのですが、とりあえず実行してみましょう。
はい、やはり同じように0から9が順番に出力されました。
whileとdoの違いは判定を行う位置です。
doでは判定をあとに行いますので、必ず1回は波括弧の中が実行されることになります。
たとえば、変数iの初期値を100に変えてそれぞれ実行してみましょう。
まずはwhileからです。
whileの場合は最初から条件を満たさないので何も出力されていません。
次にdoを見ていきます。
今度は条件判定があとですので、とりあえず1回は出力されています。
実行結果を見ると100だけ出力されているのがわかるかと思います。
条件で変数を宣言する
ifと同じように、whileの条件でも変数を宣言することができます。
実行結果も見てみましょう。
一方でdoの場合は、最後のwhileの中で変数を宣言することはできません。
試しに書いてみると、
このようにコンパイルエラーになってしまいました。
今回はwhileとdoによる繰り返して見てきました。
どちらも使いこなせるようにしておいてください。