アイデンティティ マトリックスを作成するプログラムを作成しています。これは非常に簡単です。しかし、今度は恒等マトリックスを作成する必要がありますが、逆です。結果は次のようになる必要があります。
0 0 1
0 1 0
1 0 0
アイデンティティマトリックスを作成している私が使用しているプログラムは次のとおりです。
import java.util.*;
class Lab19Part2 {
public static int[][] create(int size) {
int[][] matrix = new int[size][size];
for(int i = 0; i < size; i++)
for(int j = 0; j < size; j++)
matrix[i][j] = (i == j) ? 1 : 0;
return matrix;
} public static void main(String[] args) {
Scanner input=new Scanner(System.in);
System.out.println("Enter size of matrix: ");
int size=input.nextInt();
int matrix[][]=create(size);
for (int i=0 ; i < matrix.length ; i++) {
System.out.println();
for (int j=0 ; j < matrix[i].length ; j++){
System.out.print(matrix[i][j]+" ");
}
}
}
}
次のようにアイデンティティマトリックスを出力しますが:
1 0 0
0 1 0
0 0 1
質問は、最初の恒等マトリックスのように印刷されるようにするにはどうすればよいですか? forループと関係があることは知っていますが、特定できません。
ありがとう!