エンジニア成長日記 swaponQ

コンピュータサイエンス専攻の一般人のブログです。

新・明解 Java 入門 演習 3-1, 3-2, 3-3 解答

Hello, Terminal!swaponQです!

今回から「第3章:プログラムの流れの分岐」に入ります。

第3章には演習が18題用意されています!

まずは演習 3-1, 3-2, 3-3 に取り組んでいこうと思います。

  • 演習 3-1

整数値を読み込んで、その絶対値を求めて表示するプログラムを作成せよ。

ex03_1.java

import java.util.Scanner;

class ex03_1 {
  public static void main(String[] args) {
    Scanner stdIn = new Scanner(System.in);
    System.out.print("整数値:");
    int n = stdIn.nextInt();
    if (n < 0) {
      n = -n;
    }
    System.out.println("その絶対値は" + n + "です。");
  }
}

実行結果

整数値:-5
その絶対値は5です。
  • 演習 3-2

二つの正の整数値を読み込んで、後者が前者の約数であれば「BはAの約数です。」と表示し、そうでなければ「BはAの約数ではありません。」と表示するプログラムを作成せよ。

ex03_2.java

import java.util.Scanner;

class ex03_2 {
  public static void main(String[] args) {
    Scanner stdIn = new Scanner(System.in);
    System.out.print("整数値A:");
    int a = stdIn.nextInt();
    System.out.print("整数値B:");
    int b = stdIn.nextInt();
    if ((a % b) == 0) {
      System.out.println("BはAの約数です。");
    } else {
      System.out.println("BはAの約数ではありません。");  
    }
  }
}

実行結果

整数値A:12
整数値B:4
BはAの約数です。
  • 演習 3-3

List3-5の最後のelseを、else if (n == 0) に変更したらどうなるか検討せよ。

ex03_3.java

import java.util.Scanner;

class ex03_3 {
  public static void main(String[] args) {
    Scanner stdIn = new Scanner(System.in);
    System.out.print("整数値:");
    int n = stdIn.nextInt();
    if (n > 0)
      System.out.println("その値は正です。");
    else if (n < 0)
      System.out.println("その値は負です。");
    else if (n == 0)
      System.out.println("その値は0です。");
  }
}

実行結果

整数値:0
その値は0です。

実際にコンパイルして実行してみたところ挙動に差は生まれませんでした。
ただ条件が一つ追加されている分、非効率的なコードになってしまった感は否めないですね…。


今回は以上です。お疲れ様でした!
次回は演習 3-4, 3-5, 3-6, 3-7 です。

Goodbye, Terminal… swaponQでした!