[ Java練習問題 ] 練習問題 第3回 『繰り返し処理 ①』

目次

while 文での繰り返し処理

Java練習問題 第3回では「繰り返し処理」についての問題を用意してあります。
「繰り返し処理」の解説はこちら

問題 1 難易度 ★

① 採点結果に 80 以上の数値が入力されるまで、繰り返し入力を受け続けるプログラムを作成してください。

実行例

採点結果を数値で入力してください。
50
採点結果を数値で入力してください。
60
採点結果を数値で入力してください。
80
合格おめでとうございます!

問題 1 解答

正解は、、、
public class Main_0301 {
  public static void main(String[] args) {
    int score = 0;
    while (score < 80) {
      System.out.println("採点結果を数値で入力してください。");
      score = new java.util.Scanner(System.in).nextInt();
    }
    System.out.println("合格おめでとうございます!");
  }
}

for 文での繰り返し処理

問題 2 難易度 ★★

① 1 から 1000 までの整数の合計値を求めるプログラムを作成してください。

実行例

500500

問題 2 解答

正解は、、、
public class Main_0302 {
  public static void main(String[] args) {
  int sum = 0;
  for (int i = 1; i <= 1000; i++) {
    sum += i;
  }
  System.out.println(sum);
  }
}

for 文のネスト

問題 3 難易度 ★★

① 二重 for ループを用いて以下の出力を行ってください。
(5 行 10 列の*を出力)

実行例

**********
**********
**********
**********
**********

問題 3 解答

正解は、、、
public class Main_0303 {
  public static void main(String[] args) {
    for (int i = 1; i <= 5; i++) {
      for (int j = 0; j < 10; j++) {
        System.out.print("*");
      }
      System.out.println();
    }
  }
}

問題 4 難易度 ★★

① 二重 for ループを用いて以下の出力を行ってください。

実行例

*
**
***
****
*****

問題 4 解答

正解は、、、
public class Main_0304 {
  public static void main(String[] args) {
    for (int i = 1; i <= 5; i++) {
      for (int j = 0; j < i; j++) {
        System.out.print("*");
      }
      System.out.println();
    }
  }
}

問題 5 難易度 ★★

① 掛け算九九表を出力するプログラムを作成してください。(文字間隔の調整は “\t”を使います。)

実行例

1 2 3 4 5 6 7 8 9
2 4 6 8 10 12 14 16 18
3 6 9 12 15 18 21 24 27
4 8 12 16 20 24 28 32 36
5 10 15 20 25 30 35 40 45
6 12 18 24 30 36 42 48 54
7 14 21 28 35 42 49 56 63
8 16 24 32 40 48 56 64 72
9 18 27 36 45 54 63 72 81

問題 5 解答

正解は、、、
public class Main_0305 {
  public static void main(String[] args) {
    for (int i = 1; i <= 9; i++) { //9 行繰り返し
      for (int j = 1; j <= 9; j++) { //9 列繰り返し
        System.out.print(i * j + "\t");
      }
      System.out.println();
    }
  }
}

for 文のネストと条件分岐の組み合わせ

問題 6 難易度 ★★★

① 二重 for ループを用いて以下の出力を行ってください。

実行例

*
**
***
****
*****
****
***
**
*

問題 6 解答

正解は、、、
public class Main_0306 {
  public static void main(String[] args) {
    int num = 0; //1 行に出力する*の数
    for (int i = 0; i < 9; i++) { //9 行出力
      if (i < 5) {
        num++; // ループカウンタが 5 未満の場合は*の数をインクリメント
      } else {
        num--; // ループカウンタが 5 以上の場合は*の数をデクリメント
      }
      for (int j = 0; j < num; j++) {
        System.out.print("*");
      }
      System.out.println();
    }
  }
}

Java練習問題 第4回でも引き続き「繰り返し処理」から出題します。

(Visited 233 times, 1 visits today)
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

目次