Javasilver取得講座

どう違う?「for文」と「while文」

どうもパケです

今回は前回に引き続き繰り返し構文のひとつ

while文について書いていきます

1、どう違う?for文とwhile文

どちらも繰り返し処理を行いますが

結論から言うと、書き方が違うだけです

while文の構文はこちら

while(繰り返す条件) {
処理内容;
}

前回書いたfor構文はこちら

for( 変数の初期化 ; 繰り返す条件 ; 式 ){
処理内容;
}

こんな時に便利なfor文!今回は「繰り返し処理を行うfor文」についてです for文は繰り返す処理を行うときにとても便利なのでしっかり覚えましょう! こん...

while文では変数の初期化を先に記述し

繰り返す条件に使う式を処理内容の後に記述する点が異なりますね

では実際に eclipse にて

前回for文で書いた1から1000までをすべて足す計算

while文で書いていきます

2、while文での繰り返し処理

1から1000までをすべて足す計算を while文で書く場合

public static void main(String[] args)

後の { } 内に

int a = 0 ;
int i = 1 ;

while( i <= 1000 ){

a = a + i ;
i++ ;

}

と記述します

下の画像のようにfor文では

int a = 0 ;

for( int i = 0 ; i <= 1000 ; i++ ){

a = a + i ;

}

と記述していました

繰り返し処理後に、

System.out.println(a);

で a を出力することで

書き方は違いますが、同じく 500500 と値を表示できました

ではひとつひとつ見ていきます

3、while文での繰り返し処理 の解説

上の図の①の部分で a と i に 0 と 1 を代入し

初期化を行っています

 

続いて、②の部分の i  に 1 が代入されます

このとき ( ) 内の 1 <= 1000 が true となるため

③の部分の処理が行われます

a = a + i ; の部分では

Javaでの = は右辺を左辺に代入するという意味でしたので

a には 0 + 1 が代入され

a の値が 1 に更新されます

続いて i++ ; で i  に 1 が足され

i が 2 に更新されました

③の部分の処理が終わると、また②の部分に戻ってきます

今度は②の部分の ( ) 内が 2 <= 1000 となり再び true となり

③の部分の処理に移ります

今度は a = 1 , i = 2 となっていますので

a = 1 + 2 となり

a = 3 に更新されます

そして i に 1 が足され

i = 3 となり再び②の部分の処理に戻ります

このループを i が 1000 となるまで続き

i = 1001 となった際に ( ) 内が

1001 <= 1000 となり false となるため

③の処理は行われずループを抜け

④の部分が処理され 500500 と表示されます

while文の処理の流れは

上の図のようになります

for文とは書き方が違うだけですね

まとめ

  • for文とwhile文 は書き方が違うだけ
  • 繰り返す条件が true であれば処理をループする
  • 繰り返す条件が false となったらループを抜ける

今回はここまでとさせていただきます

次回は break文 と continue文 について書いていきます

ではでは

ABOUT ME
パケ
三十路だって、仕事してたって、既婚だってできるんだ! 三十路介護士パケが学んだプログラミングを皆さんと一緒に 年齢なんてか~んけ~いないさ~