練習問題 解答
6.10 練習問題 解答
問1
① ○:if 文以外に switch 文もあります。
② ○:if 文、else if 文という構成だった場合、if 文に当てはまらない場合に限り else if の条件を確認します。
if 文、if 文という構成だった場合、1 番目の if 文に当てはまるかどうかは関係なく 2 番目の条件を確認します。
③ ×:if と else ブロック内に if 文は使用できます。これを if 文のネストと呼びます。
④ ○
⑤ ×:条件分岐が行える文法には if 文の他に switch 文があります。
問2
① if(x <= 9)
② if(x > 10)
③ if(x == 5)
④ if(x >= 0)
⑤ if(x != 5)
⑥ if(x < -1)
問3
① 満たさない:x = -1 y = -2
② 満たさない:x = 2 y = 1
③ 満たさない:x = 1 y = 1
④ 満たす :x = 1 y = 2
xよりyが大きい値でないと条件は満たされないので、④のみが条件式を満たしています。
問4
① ×:10、30、50「より」小さいという条件式では、その数値が含まれないのでメッセージに合わない
② ×:9、29、49「以下」という条件式では、10、30、50 数値が含まれないのでメッセージに合わない
③ ○:11、31、51「より」小さいという条件式は、つまり 10、30、50 以下となりメッセージに合っている
④ ○:10、30、50「以下」という条件式は、その値を含むのでメッセージに合っている
⑤ ×:9、29、49「より」小さいという条件式では、メッセージに合わない
問5
➢ Practice0601.java
package jp.co.f1.intro.ch6exercise; import java.util.Scanner; public class Practice0601 { public static void main(String[] args) { Scanner sin = new Scanner(System.in); System.out.print("数値を入力-->"); int num = sin.nextInt(); if(num % 2 == 0){ System.out.println("入力数値[" + num + "]は偶数です。"); }else{ System.out.println("入力数値[" + num + "]は奇数です。"); } } }
問6
① if( num >= 0 && num <= 9)
② if( num < 0 || num > 9)
③ if( num1 == 5 && num2 != 999)
④ if( char1 == ‘y’ || str1.equals(“yes”) )
⑤ if( month >= 3 && month <= 5 )
⑥ if( month >= 6 && month <= 8 )
⑦ if( month >= 9 && month <= 11 )
⑧ if( month == 12 || (month > 0 && month <= 2) )
⑨ if( ( i != w ) && (num1 == num2) )
⑩ if( a == x || b == y || c == z )
問7
➢ Practice0603.java
package jp.co.f1.intro.ch6exercise; import java.util.Scanner; public class Practice0603 { public static void main(String[] args) { Scanner sin = new Scanner(System.in); System.out.print("成績を入力(1~5)-->"); int grade = sin.nextInt(); switch (grade){ case 1: System.out.println("もっと頑張りましょう!"); break; case 2: System.out.println("もう少し努力が必要です。"); break; case 3: System.out.println("さらに良い成績を目指しましょう。"); break; case 4: System.out.println("良い成績です。"); break; case 5: System.out.println("最高の成績です。"); break; default: System.out.println("1~5 の数値を入力して下さい!"); break; } } }
問8
答えは、④です。
① 「a != 5」は、 3と5は等しくないので、true を返す。
② 「( a > 2 ) && ( a < 6 )」は、 true && true の結果は true を返す。
③ 「( ( a != 5 ) || ( a <= 2 ) ) && ( ( a > 2 ) && ( a < 4 ) )」は、(true||false)&&(true&&true) ⇒ true&&true ⇒ true を返す。
④ 「( a > 2 ) && ( ( a > 6 ) || ( a < 1) )」は、true&&(false||false) ⇒ true&&false ⇒ false を返す。