ユーザーが必要とする行数を要求するプログラムを作成することになっています。たとえば、ユーザーが 4 を入力number
すると、1 から 16 までのすべての数字が 4 列 4 行に配置されて表示されます。4 を入力すると、次のような出力が表示されます。
1 2 3 4
8 7 6 5
9 10 11 12
16 15 14 13
ご覧のとおりパターンがあります。最初に表示される数字は 1 で、その後 4 まで増加します。次の行は 8 から始まり、5 になります。ご覧のとおり、蛇のようです。しかし、私のプログラムは機能していません。プログラムをシミュレートしようとしましたが、何が問題なのかまだわかりません。
もう 1 つの例は、3 が入力された場合です。
1 2 3
6 5 4
7 8 9
これが私の現在のコードです:助けてくださいありがとう
import java.util.*;
public class ArrayOutput2
{
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
int number = 0;
System.out.print("Enter number of rows: ");
number = input.nextInt();
int[][] num = new int[number][number];
int k=1, i, j;
if (number == 1)
{
num[0][0] = 1;
}
while(k< (number*number))
{
for(i=number; i>=1; i--)
{
if (i%2==1)
{
for(j=number-1; j>=0; j--)
{
num[i-1][j]=k;
k++;
}
}
else
for(j=0; j<=number-1; j++)
{
num[i-1][j]=k;
k++;
}
}
}
for(i=number-1;i<0;i--)
{
for(j=number-1;j<0;j--)
System.out.print(num[i][j]+"\t");
System.out.println();
}
}
}