繰り返す命令として、while文があります。このページでは、whileについて説明します。
クイックジャンプ: 形式 | 例 | 動作確認 | 練習 | 次のレッスンでは?
whileは、ある条件を満たしている間(ある条件を満たさなくなるまで)、処理を繰り返します。次のように書きます。
while (条件) 処理; 意味:「条件」を満たす間、「処理」を繰り返し行います。 |
「while」、「(条件)」の前後の空白は、いくつ入れてもかまいません。また、複数の処理を繰り返したいときは、複数の処理を「
{ 」 と「 } 」で囲んでブロックにします。
例えば、
while (x<10)
x=x+1;
は、x<10である間、x=x+1を実行します。x=x+1によりxの値は1つずつ増えていき、いつかはxの値は10以上になりますので、whileの処理はいつかは終わります。しかし、
x=9;
y=0;
while (x<10)
y=y+1;
では、いつまでたっても、xの値が10以上になりませんので、y=y+1の処理を永遠に続けてしまい(あるいはエラーを表示して異常終了したり)、正しくありません。whileの条件はいつかは満たされなくなるようにしましょう。
Q&Aコーナー |
Q: do whileというのをみましたwhileとどのように違うのですか? |
A: ここをクリック。 |
プログラム
次のようなプログラムをみてみましょう。
[注意]左端の番号は、プログラムの一部ではありません。各行を区別するために付けた番号です。
プログラム説明
6行目〜10行目のwhile文で、a>0の間、8行目と9行目を処理します。
最終的に、aとbの値がいくつになるか、予想してみてください。その予想が当たっているかを、下の動作確認で調べてください。
それでは、上の例の動作確認をしてみましょう。また、プログラムを変更して、下の動作確認をしてみましょう。動作確認をする前に、Internet
Explorerの設定をちゃんとしているか調べてください。
Cシミュレータによる動作確認をするときは上の絵をクリック
[注意]このリンク先のページはInternet Explore
3.0以降で正しく表示されます。
問題: 次のプログラムでは、最終的にyの値はいくつになりますか?
|
解答例: ここをクリック。 |
問題: 下のプログラムでは、最終的にxの値はいくつになりますか?
|
解答例: ここをクリック。 |
問題: 下のプログラムでは、最終的にzの値はいくつになりますか?
|
解答例: ここをクリック。 |
コンピュータは、たくさんのデータを取り扱います。今までの知識でたくさんのデータを取り扱うには、1つのデータに対応して1つ変数を用意しなければなりません。しかし、これは手間がかかります。配列を使えば、同じようなたくさんの変数を一度に用意できます。次のレッスン12では、配列について説明します。[レッスン12へ]
|
このページの最終更新日は 00/01/25 です。 |
このページに関するご意見・コメントは板谷雄二(itaya@alice.asahi-u.ac.jp)までお願いします。 |
(C) 板谷雄二 |