Пользовательский ввод для 2D-массива, когда значение Y больше значения X - PullRequest
1 голос
/ 28 мая 2020

My l oop для пользовательского ввода 2d array выглядит следующим образом:

        for(int i = 0; i < y; i++){
            for(int j = 0; j < x; j++){
                System.out.println("Enter the value");
                int value = s.nextInt();
                inArray[i][j] = value;
            }
        }

Значения x и y импортируются из пользователя и используются для создания array размера = new int [y] [x]

Он отлично работает, когда значение x больше, чем значение y, но когда наоборот, он не выводит правильные результаты

Например, когда Я ввожу 5x5 array и получаю

1,2,3,4,5
6,7,8,9,1
2,3,4,5,6
7,8,9,1,2
3,4,5,6,7

Но если я попробую 3x4 array, я получу

1,2,34
5,6,78
9,1,23

Значения 34, 78 и 23 должны быть отделить в отдельном столбце следующим образом:

1,2,3,4
5,6,7,8
9,1,2,3

1 Ответ

1 голос
/ 28 мая 2020

Вы можете посмотреть @ код ниже:

public class Laptop {


    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int[][] inArray = new int[10][10];
        for(int i = 0; i < 3; i++){
            for(int j = 0; j < 5; j++){
                System.out.println("Enter the value");
                int value = scan.nextInt();
                inArray[i][j] = value;
            }
        }

        for(int i = 0; i < 3; i++){
            for(int j = 0; j < 5; j++){
                System.out.print(inArray[i][j] + " ");
            }
            System.out.println();
        }
    }
}

Результат, который я получаю:

1 2 3 4 5 
6 7 8 9 10 
11 12 13 14 15 
...