プロが教える店舗&オフィスのセキュリティ対策術

以下問題文&条件
・5行10列の2次元配列を生成する
・フラグ用変数を宣言し、初期化する
・2重ループを用いて、配列の各要素に1から25の整数値を入力する
・1から25の範囲外の値が入力された場合、フラグを反転し、ループから抜け出し、プログラムを終了する
・フラグが初期値のままであれば、2重ループを用いて、配列の内容を表示する
※1 から 25 以外の時は、2重ループから抜け出すこと

出来れば解説もお願いしたいです。

A 回答 (1件)

import java.util.Scanner;



public class Main {
 public static void main(String[] args) {
  Scanner scanner = new Scanner(System.in);
  // 5行10列の2次元配列を生成する
  int[][] a = new int[5][10];
  // フラグ用変数を宣言し、初期化する
  boolean flag = false;
  int n;
  // 2重ループを用いる
  for (int i = 0; i < a.length; i++) {
   for (int j = 0; j < a[i].length; j++) {
    // ループから抜け出し、プログラムを終了する
    if (flag) {
     return;
    }
    n = scanner.nextInt();
    if ((n > 0) && (n < 26)) {
     // 配列の各要素に1から25の整数値を入力する
     a[i][j] = n;
    } else {
     // 1から25の範囲外の値が入力された場合、フラグを反転する
     flag = !flag;
    }
   }
  }
  // フラグが初期値のままであれば、2重ループを用いて、配列の内容を表示する
  for (int[] raw: a) {
   for (int num: raw) {
    System.out.println(num);
   }
  }
 }
}
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!