隣接する 2 つの文字が同じにならないように、文字 A から F を含む N x N グリッドを印刷する必要があります。以下のコードは N x N グリッドを出力しますが、左右の文字が異なるだけです。上下の文字も異なるようにする方法が見つかりません。配列を使用せずにこの問題を解決する必要があります。文字はランダム化する必要があります。
public static void main(String[] args) {
int N = StdIn.readInt();
for (int column = 0; column < N; column++) {
int x = 0;
for (int row = 0; row < N; row++) {
int c = (int) (Math.random() * 6 + 1);
while (x == c) {
c = (int) (Math.random() * 6 + 1);
}
if (c == 1) {
System.out.print("A ");
}
if (c == 2) {
System.out.print("B ");
}
if (c == 3) {
System.out.print("C ");
}
if (c == 4) {
System.out.print("D ");
}
if (c == 5) {
System.out.print("E ");
}
if (c == 6) {
System.out.print("F ");
}
x = c;
}
System.out.println();
}