Iを記述する必要がプログラムこの印刷2DアレイのJava
0 1 2
3 4 5
6 7 8
等番号からなる正方2次元配列、又はプログラム番号「d」を読み出し、この
0 1 2 3 4
5 6 7 8 9
10 11 12 13 14
15 16 17 18 19
20 21 22 23 24
あります( (例えば、n = 3の場合には、プログラムは私に電話をかける必要があります)最初の例のように3つの数字を挿入して、1と4と3を選択するとしましょう。入力は次のようになります:
3
3
1 4 2
次に、第1、第2、第3の入力間の距離を計算し、それらを合計する必要があります。その合計は出力です。ここではプログラムbは関係ありません*
if(b==2) {
int d=sc.nextInt();
int n=sc.nextInt();
int[][] array=new int[d][d]; //length and heigth of array
int c=0;
int manhattanDistanceSum=0;
for (int i = 0; i < n; i ++){ //for inserting values
for (int j = 0; j < n; j ++){
if (i < n){
i++;
array[i][j] = sc.nextInt();
}
else {
break;
}
for(i=0; i<array.length;i++) {
for(j=0;j<array[0].length;j++) {
array[i][j]=c; //actual locations of numbers
//numbers in array
c++;
if(manhattanDistanceSum != 0) {
int dx= c/d;
int dy= c % d;
c=Math.abs(dx) + Math.abs(dy);
manhattanDistanceSum+=c;
}
}
}
System.out.print(array[i][j]);
System.out.println();
}
}
System.out.println(manhattanDistanceSum);
}
}
}
で、それだけで、これは正方配列であるので、それを無視しようとしていることを意味します。これはこれとは関係ありません。 これは私が持っているすべてのもので、私のコードで間違っているものについて助けが必要です。 ありがとう
'System.out.println'は、第' for'ループの外でなければなりませんか? – UnholySheep
ええと。それはsthのようです: "スレッドメインの例外..." –
* "sthのような" * - 実際の例外を投稿し、曖昧な記述をしないでください。そして、それが指し示すコードのどの行に指摘するか – UnholySheep