エンジニア成長日記 swaponQ

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

新・明解 Java 入門 演習 4-16, 4-17, 4-18 解答

Hello, Terminal!swaponQです!

前回に引き続き、今回は演習 4-16, 4-17, 4-18 に取り組んでいこうと思います。

  • 演習 4-16

読み込んだ個数だけ*を表示するList4-11を書きかえて、5個表示するごとに改行するプログラムを作成せよ。

ex04_16.java

import java.util.Scanner;

class ex04_16 {
	public static void main(String[] args) {
		Scanner stdIn = new Scanner(System.in);
		int n;
		do {
			System.out.print("何個*を表示ししますか?:");
			n = stdIn.nextInt();
		} while (n <= 0);
		for (int i = 1; i <= n; i++) {
			System.out.print('*');
			if (i % 5 == 0) {
				System.out.println();
			}
		}
    System.out.println();
	}
}

実行結果

*****
*****
**
  • 演習 4-17

読み込んだ整数値の全ての約数を表示するList4-13を書きかえて、約数の表示が終わった後に、約数の個数を表示するプログラムを作成せよ。

ex04_17.java

import java.util.Scanner;

class ex04_17 {
	public static void main(String[] args) {
		Scanner stdIn = new Scanner(System.in);
		int n;
		do {
			System.out.print("整数値:");
			n = stdIn.nextInt();
		} while (n < 1);
		int count = 0;
		for (int i = 1; i <= n; i++) {
			if (n % i == 0) {
				System.out.println(i);
				count++;
			}
		}
		System.out.println("約数は" + count + "個です。");
	}
}

実行結果

整数値:4
1
2
4
約数は3個です。
  • 演習 4-18

1からnまでの整数値の2乗値を表示するプログラムを作成せよ。

ex04_18.java

import java.util.Scanner;

class ex04_18 {
	public static void main(String[] args) {
		Scanner stdIn = new Scanner(System.in);
		int n;
		do {
			System.out.print("nの値:");
			n = stdIn.nextInt();
		} while (n < 1);
		for (int i = 1; i <= n; i++) {
			System.out.println(i + "の2乗は" + (i * i));
		}
	}
}

実行結果

nの値:3
1の2乗は1
2の2乗は4
3の2乗は9


今回は以上です。お疲れ様でした!
次回は演習 4-19, 4-20, 4-21 です。

Goodbye, Terminal… swaponQでした!