この章で行う学習内容
●条件によって処理を分ける、条件分岐 if文、switch文の使い方について
●値の大小を比較するための比較演算子 条件を短く記述するための条件演算子の使い方について
●指定した回数繰り返し同じ処理を行う、繰り返し文 for文、while文の使い方について
●変数は宣言した時に使用範囲が決められています、その使用範囲 ( スコープ )について
●プログラムの流れを表すフローチャートの書き方、読み方について
●明確なアルゴリズムの組み方について
●ひとつの変数に複数の値を入れることが出来る、配列の使い方について
●値の大小を比較するための比較演算子 条件を短く記述するための条件演算子の使い方について
●指定した回数繰り返し同じ処理を行う、繰り返し文 for文、while文の使い方について
●変数は宣言した時に使用範囲が決められています、その使用範囲 ( スコープ )について
●プログラムの流れを表すフローチャートの書き方、読み方について
●明確なアルゴリズムの組み方について
●ひとつの変数に複数の値を入れることが出来る、配列の使い方について
条件分岐① if文
条件分岐とは?
条件分岐とは、ある条件が満たされているのかを判断し、 その結果で処理を振り分けることを言います例えば、 晴れならば~処理をして、雨ならば~処理をするといった感じです Javaの条件分岐には、if文とswitch文の2つがあります
条件分岐は、どのプログラミング言語においても、とても重要な要素です Javaも例外ではなく今後プログラムを作成していく上で、 この構文は必須となります 使い方・処理順序・注意点を、しっかりと把握しておきましょう
条件分岐は、どのプログラミング言語においても、とても重要な要素です Javaも例外ではなく今後プログラムを作成していく上で、 この構文は必須となります 使い方・処理順序・注意点を、しっかりと把握しておきましょう
構文1
if ( 条件 ) { 条件が成り立つ時の処理 } else { 条件が成り立たない時の処理 }
例文1
int i = 10; if( i == 10 ) { System.out.println( "★" ); }else{ System.out.println( "●" ); }
出力結果
★
if文 条件を増やす
構文2
if ( 条件A ) { 条件Aが成り立つ時の処理 } else if ( 条件B ) { else if は複数書くことが出来る 条件Aが成り立たず、 条件Bがなる立つ時の処理 } else { else は最後に書く 条件Aも条件Bも成り立たない時の処理 }
例文2
int i = 20; if( i == 10 ) { System.out.println( "★" ); }else if ( i == 20 ) { System.out.println( "▲" ); }else { System.out.println( "●" ); }
出力結果
▲
条件分岐② switch文
switch文
構文1
switch( 値 ) { int型とchar型のみ! case 値1: 値が値1と一致する場合の処理 break; case 値2: 値が値2と一致する場合の処理 break; default: 値が一致しない場合の処理 }
例文1
int i = 20; switch( i ) { case 10: System.out.println( "○" ); break; case 20: System.out.println( "△" ); break; default: System.out.println( "×" ); }
出力結果
▲
演算子
演算子 比較演算子の種類
演算子 | 記入例 | 説明 |
---|---|---|
> | x > y | xがyよりも大きい場合にtrueを返す。 |
>= | x >= y | xがyよりも大きいか等しい場合にtrueを返す。 |
< | x < y | xがyよりも小さい場合にtrueを返す。 |
<= | x <= y | xがyよりも小さいか等しい場合にtrueを返す。 |
== | x == y | xとyが等しい場合にtrueを返す。 |
!= | x != y | xとyが等しくない場合にtrueを返す。 |
例文
int a = 9; int b = 10; if ( a == b ) { System.out.println( "aとbは等しい" ); } else if ( a > b ) { System.out.println( "aの方が大きい" ); } else { System.out.println( "bの方が大きい" ); }
出力結果
bの方が大きい
演算子 条件演算子の種類
演算子 | 記入例 | 説明 |
---|---|---|
&& | x && y | xとyの両方がtrueの場合にtrueを返す。 |
|| | x || y | xとyのいずれかがtrueの場合にtrueを返す。 |
! | !x | xがyよりも小さい場合にtrueを返す。 |
例文
int a = 5; int b = 5; int c = 10; if( a == b && b == c ){ System.out.println( "○" ); }else if ( a == b || b == c || a == c ){ System.out.println( "△" ); }else{ System.out.println( "×" ); } if( b != c ){ System.out.println( "□" ); }
出力結果
△ □
繰り返し① for文
繰り返しとは?
繰り返しとは、指定された回数、同じ処理を繰り返し行うことを言います
Javaの繰り返しには、for文とwhile文、do~while文の3つがあります
Javaの繰り返しには、for文とwhile文、do~while文の3つがあります
構文
for ( 初期値; for文の中で使う変数の初期値を設定したりします。 条件; このfor文が繰り返す為の条件を指定します。 変化の為の式 ) { 基本的には増減式が入ります。 このfor文の中の処理が行われたときに、 何らかの変化を与える為の式を指定します。 処理 } ※for ( ; ; )のように、全て省略することが出来ます この場合、無限に繰り返すようになります。
例文
for ( int i = 0 ; i < 10 ; i++ ) { System.out.println( "JAVA" ); }
変数 i の値 | 条件 | 判定 |
---|---|---|
0 | 0 < 10 | ○ |
1 | 1 < 10 | ○ |
: | : | : |
9 | 9 < 10 | ○ |
100 | 100 < 10 | × |
出力結果
JAVA が10回表示される
繰り返し② while文
while文
構文
while( 条件 ) { 処理 } このwhile文が繰り返す為の条件を指定します。 for文とは違い条件を省略して書くことは出来ません。
例文
int i = 0; while( i < 10 ) { System.out.println( "JAVA" ); i++; }
スコープ
スコープとは?
スコープとは変数を使用できる範囲のことを言います。
定義した変数はブロック内( "{" から "}" まで)でしか使用することができません。
定義した変数はブロック内( "{" から "}" まで)でしか使用することができません。
例文
public static void main( String[] args ) { int a = 0; for ( int b = 0; b < 5; b++ ) { System.out.println( a + b ); } //変数bのスコープ if ( a == 10 ) { int c = 5; System.out.println( a + c ); } //変数cのスコープ System.out.println( a ); System.out.println( b ); //← × (スコープ外の為、使用不可) System.out.println( c ); //← × (スコープ外の為、使用不可) } //変数aのスコープ
フローチャート
フローチャートとは?
フローチャートとは、プログラムの流れを表す図の事を言います。
プログラムの流れとは、言わば「行動する順序」と言えます。
その「行動する順序」を図で表すことによって、
どのような処理を行ったらいいのか?
どのような流れで処理を行うのか?
などがしっかり理解する事ができ、複雑な処理になったとしても、
図にすることで頭が整理され混乱しないで済みます。
今後は、すぐにプログラムを書こうとせず、
一旦フローチャートにして頭を整理してからプログラムを記述するようにしましょう。
プログラムの流れとは、言わば「行動する順序」と言えます。
その「行動する順序」を図で表すことによって、
どのような処理を行ったらいいのか?
どのような流れで処理を行うのか?
などがしっかり理解する事ができ、複雑な処理になったとしても、
図にすることで頭が整理され混乱しないで済みます。
今後は、すぐにプログラムを書こうとせず、
一旦フローチャートにして頭を整理してからプログラムを記述するようにしましょう。
アルゴリズム
アルゴリズムとは?
アルゴリズムとは、ある目的を実現するために必要な作業の手順を、
明確に述べたものの事を指します。
アルゴリズムをプログラミング言語で書いたものがプログラムになります。つまり、アルゴリズム(処理手順)が明確になっていなければプログラムは書けません。
明確に述べたものの事を指します。
アルゴリズムをプログラミング言語で書いたものがプログラムになります。つまり、アルゴリズム(処理手順)が明確になっていなければプログラムは書けません。
アルゴリズム カウンタ
例えば、1から10までの数字には偶数は何個あるか?
という問題があった場合にどのような処理手順が考えられるでしょうか。
という問題があった場合にどのような処理手順が考えられるでしょうか。
int count = 0; for ( int i = 1 ; i <= 10 ; i++ ) { if ( i % 2 == 0 ) { count++; } } System.out.println( count );
アルゴリズム フラグ
例えば、1から10までの数字には偶数は存在するか?
という問題があった場合にどのような処理手順が考えられるでしょうか。
boolean flag = false; for ( int i = 1; i <= 10 ; i++ ) { if ( i % 2 == 0 ) { flag = true; break; } } if ( flag ) { System.out.println( "偶数があります" ); }
配列
配列とは?
配列とは、複数の値を保持できる変数で、変数名と要素番号で管理されます。
例えば、今までであれば、int型の値が10個必要な時、
int型の変数を10個宣言していました。
int a1, a2, a3, …, a10;
しかし、必要な値が 100個・1000個の場合はどうでしょうか?
変数を宣言するだけでも大変な作業になります。
この問題を、1つの変数で解消できるのが配列になります。
例えば、今までであれば、int型の値が10個必要な時、
int型の変数を10個宣言していました。
int a1, a2, a3, …, a10;
しかし、必要な値が 100個・1000個の場合はどうでしょうか?
変数を宣言するだけでも大変な作業になります。
この問題を、1つの変数で解消できるのが配列になります。