第20講 if文以外のループ処理
第1話 while文
ループ処理は、本講義ではif文しか学んでいませんが、
他にもループ処理はあります。
while文とdo...while文です。
while文は次のように使います。
while(条件式){
・
・
・
}
これは条件式が、if文と同じで真のとき実行されます。
1+2+3+・・・+n
を計算させるプログラムを組んでみましょう。
新規にプロジェクトを作り次のようにコーティングしてみましょう。
#include<iostream>
using namespace std;
int main(){
int w,i,n;
cout<<"いくつまで加えるのかキーボードから入力してください。"<<endl<<"n=";
scanf("%d",&n);
w=0;
i=1;
while(i<=n){
w+=i;
i++;
}
cout<<"1から"<<n<<"までの和は"<<w<<"です。"<<endl;
}
実行画面例
while文では、うっかりすると無限ループになってしまいます。
例えば、
i++;
を忘れると無限ループになってしまいます。
条件式が真であるとは、条件式の値が1であることであり、
偽であるとは条件式の値が0であるということでした。
ですから次のように変更してもプログラムは同様に動きます
#include<iostream>
using namespace std;
int main(){
int w,i,n;
cout<<"いくつまで加えるのかキーボードから入力してください。"<<endl<<"n=";
scanf("%d",&n);
w=0;
i=1;
int h=1;
while(h){
w+=i;
i++;
if(i>n)h=0;
}
cout<<"1から"<<n<<"までの和は"<<w<<"です。"<<endl;
}
また、強制的に終了させるbreakを使うと次のようにも変更できます。
#include<iostream>
using namespace std;
int main(){
int w,i,n;
cout<<"いくつまで加えるのかキーボードから入力してください。"<<endl<<"n=";
scanf("%d",&n);
w=0;
i=1;
while(1){
w+=i;
i++;
if(i>n)break;
}
cout<<"1から"<<n<<"までの和は"<<w<<"です。"<<endl;
}
では課題です。1からnまで掛ける計算をさせるプログラムをwhile文で実行してみましょう。
第19講第7話へ 第2話へ
C言語 C++講義第1部へ
VB講義へ
VB講義基礎へ
vc++講義へ第1部へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座
初心者のための世界で一番わかりやすいVBA入門講義(基礎から応用まで)