Я пытаюсь завершить sh этот волшебный * квадратный проект c, но при заполнении квадрата он ссылается на пустую переменную экземпляра, а не на файл с определенным размером, и я не могу его исправить.
В строке 22 указано нулевое значение ошибки.
Может кто-нибудь помочь мне с этим?
public class MagicSquare {
private int[][] magicSquare;
public MagicSquare(int size){
int[][] magicSquare = new int[size][size];
fillSquare(size);
}
private void fillSquare(int size){
int row = size - 1;
int col = size / 2;
magicSquare[row][col] = 1;
for (int i = 2;i < size * size;++i){
if (magicSquare[(1 + row) % size][(col + 1) % size] == 0){
row = (1 + row) % size;
col = (1 + col) % size;
}
else {
row = ( row - 1 + size) % size;
}
magicSquare[row][col] = i;
}
}
public void toString(int size){
for (int i = 0; i < size;++i){
for (int j = 0; j < size;++j){
System.out.println(magicSquare[i][j]);
}
}
}
}