画像(logo)

HOME/[JAVA言語 入門]小学生でもわかるJAVA言語 目次/七日目 if(もし〜だったら)!

広告

[JAVA言語 入門 小学生でもわかるJAVA言語]
七日目 if(もし〜だったら)!

広告

↓2017年04月19日発売↓

カラー図解 Javaで始めるプログラミング 知識ゼロからの定番言語「超」入門 (ブルーバックス)

新品価格
¥1,080から
(2017/5/1 13:45時点)

目次へ戻る

if(もし〜だったら)!

プログラムの基本は

(1)上から順番に
(2)条件で分かれ道
(3)繰り返し

でしたね!

今回から(2)条件で分かれ道をやっていきます!

いろいろな条件でプログラムを分かれ道させてみましょう!

プログラミングがどんどん楽しくなる時ですね!

2つに分かれ道

/*七日目 プログラム1*/
import java.util.*;

class Test{
	public static void main(String args[]){
		Scanner sc = new Scanner(System.in);
		int kotae = 0;

		System.out.print("問題です!\n世界一高い山は?\n\n");
		System.out.print("1・エベレスト 2・富士山\n\n");
		System.out.print("数字でお答えください! > ");

		kotae = sc.nextInt();

		if(kotae == 1)System.out.print("正解です!\n");
		else System.out.print("ぶっぶー!不正解です!\n");
	}
}

■実行結果■

画像(jb_7_1)

■説明■

答えを入れるための変数

int kotae = 0;

を用意します。

そして前回同様「sc.nextInt()」命令で答えの1か2を受け取ったらいよいよ「if」命令の出番です!

条件で分かれ道

if(kotae == 1)System.out.print("正解です!\n");
else System.out.print("ぶっぶー!不正解です!\n");

この「if」命令のそれぞれの条件を見ていきましょう!

条件が合う場合

if(kotae == 1)System.out.print("正解です!\n");

「if(条件)System.out.print("正解です!\n");」この最初の「条件」が合っていれば続けて書いた「System.out.print("正解です!\n");」が実行されます。「==」の説明は後ほどします。

条件が合わない場合

else System.out.print("ぶっぶー!不正解です!\n");

このelse(エルス)に続くプログラムはそうではない時に実行されます!最初の条件があわない時に必ず実行されます!

2つに分かれる場合はこのように「if」と「else」でそれぞれ分かれ道させます!

合わない時は何もしない

ちなみにこの「if」命令を

if(kotae == 1)System.out.print("正解です!\n");

でその後の「else」を書かない場合は、「条件が合う場合」だけ実行されて、その他は「何もしない」プログラムになります!

同じか?は「==」が2つ!

if(kotae == 1)	

あとはこの気になる「==」ですね!まあ・・・。そのまま覚えてください。「kotae == 1」は「kotae」と「1」は同じか?という意味になります!これを「条件式(じょうけんしき)」といいます!

しつこく言いますが「==」イコールは2つです。ここを間違えて「=」イコール1つにしてしまうと意味がぜんぜん違うけれど文法は合ってるのでプログラムがワケわからない方向に突き進むので注意しましょう!

広告

いろいろな条件式を見てみましょう!

さきほどの「==」の他にもいろいろな条件式があります。

仮にあなたを「you」として、年令を聞かれていると考えてください。

どこからどこまでが、含まれる(ふくまれる)、含まれない(ふくまれない)を意識しながら他の条件式も見てみましょう!

if(you == 20)

あなたが20才ちょうどだったら。

if(you != 20)

あなたが20才ではなかったら。

この場合はそれ以外の年令が全てあてはまります。

if(you < 20)

あなたが20才未満だったら。

この場合は19才から、その下の年令全てあてはまります。マイナスもあてはまります。20才は含まれません!

if(you > 20)

さきほどの逆ですね!21才から、その上の年令全てです。同じく20才は含まれません!

if(you <= 20)

あなたが20才以下だったら。

20才が含まれるバージョンです。

if(you >= 20)

あなたが20才以上だったら。

逆バージョンですね!

含まれる、含まれないが大事です。あと「<」と「=」の順番を逆に「=<」したりするミスが多いので気をつけましょう!

条件を増やそう!

ではいろいろな条件式を使って条件を増やしてみましょう!

テストの点数をランク分けするプログラムです!

80点〜100点・・・Aランク
30点〜79点・・・Bランク
0点〜29点・・・Cランク

この条件でランク分けをしてみます!

/*七日目 プログラム2*/
import java.util.*;

class Test{
	public static void main(String args[]){
		Scanner sc = new Scanner(System.in);
		int test = 0;

		System.out.print("テスト結果を点数でランク分けします!\n");
		System.out.print("A(100点〜80点):B(79点〜30点):C(29点〜0点)\n\n");
		System.out.print("テストの点数を入力してください > ");

		test = sc.nextInt();

		if(test >= 80)System.out.print("\n\n結果" + test + "点 Aランクです!\n");
		else if(test >= 30)System.out.print("\n\n結果" + test + "点 Bランクです!\n");
		else System.out.print("\n\n結果" + test + "点 Cランクです!\n");
	}
}

■実行結果■

画像(jb_7_2)

■説明■

「else if」を続ける事によって、「そうではなく、もし〜だったら・・・。」と続ける事ができます。

if(条件)続きの命令
else if(条件)続きの命令
else if(条件)続きの命令
else 続きの命令

このようにさらに条件を加える事もできます!

「>=」→「>」にすると・・・。

if(test > 79)System.out.print("\n\n結果" + test + "点 Aランクです!\n");
else if(test > 29)System.out.print("\n\n結果" + test + "点 Bランクです!\n");
else System.out.print("\n\n結果" + test + "点 Cランクです!\n");

さきほどのプログラムで「=」を抜いた場合です。

含まれる、含まれないが大事です!

注意です!

if(test > 79)System.out.print("\n\n結果" + test + "点 Aランクです!\n");
if(test > 29)System.out.print("\n\n結果" + test + "点 Bランクです!\n");
else System.out.print("\n\n結果" + test + "点 Cランクです!\n");

「else if」の「else」を抜いてみました。

この場合は「そうではなく」の意味がなくなるのでたとえば点数が90点だとしたら

■実行結果■

結果90点 Aランクです!
結果90点 Bランクです!

というように両方の条件が反応してしまうので注意が必要です!

命令を増やす!

今までは条件の後に一つの命令だけしか使えませんでしたね!{}カッコを使うと命令を増やす事ができます。

/*七日目 プログラム3*/
import java.util.*;

class Test{
	public static void main(String args[]){
		Scanner sc = new Scanner(System.in);
		int kotae = 0;

		System.out.print("問題です!\n世界一高い山は?\n\n");
		System.out.print("1・エベレスト 2・富士山\n\n");
		System.out.print("数字でお答えください! > ");

		kotae = sc.nextInt();

		if(kotae == 1){
			System.out.print("正解です!\n");
			System.out.print("もの知りはかせですね!!!\n");
		}
		else{
			System.out.print("ぶっぶー!不正解です!\n");
			System.out.print("もっと勉強しましょう!\n");
		}
	}
}

■実行結果■

画像(jb_7_3)

■説明■

一言加えました!{}カッコをつける事でさらに命令を増やす事ができます!

{}カッコを加えた時にわかりやすいようにと、さらにスペースを空けて命令の先頭をずらしている所に注意です!

次回は「if」の仕組みについて見ていきます!

次回

八日目 if(もし〜だったら)!パート2

□ページの先頭へ□

□目次へ戻る□

□HOME□

広告

↓2016年06月25日発売↓

新・明解Java入門 (明解シリーズ)

新品価格
¥2,916から
(2017/5/1 13:47時点)

↓2017年04月18日発売↓

Java本格入門 ~モダンスタイルによる基礎からオブジェクト指向・実用ライブラリまで

新品価格
¥3,218から
(2017/5/1 13:50時点)

↓2017年05月17日発売↓

新・明解 Javaで学ぶアルゴリズムとデータ構造 (明解シリーズ)

新品価格
¥2,592から
(2017/5/1 13:54時点)

↓2017年04月04日発売↓

Java 第2版 入門編 ゼロからはじめるプログラミング (プログラミング学習シリーズ)

新品価格
¥2,030から
(2017/5/1 13:55時点)