さて、私は 2D 配列の塗りつぶしをかなりうまく取得しました...今度は、2D 配列にランダムに生成された同じ値を保持する必要がありますが、垂直の順序を逆にします (2 番目の for ループ)。したがって、基本的に 2 番目の for ループは同じ値を保持する必要がありますが、順序は逆になります。しかし、ネストされた for ループと rand() に入ると、すべての新しいランダムな文字が生成されるような気がします...
誰もこれを行う方法を知っていますか?? これは私がこれまでに持っているものです:
char array[20][20];
srand(time(NULL));
for(int i=0;i<20;i++)
{
for(int j=0;j<20;j++) {
array[i][j]= ((rand() % 2) == 0) ? 'O' : 'X';
cout << array[i][j];
}
cout << endl;
for(int j=20-1; i>=0; i-- {
array[i][j]= ((rand() % 2) == 0) ? 'O' : 'X';
cout << array[j][i];
}
cout << endl;
}
編集これを修正する方法に興味がある人のために、私はそれを理解しました!! コードは次のとおりです。
char array[20][20];
srand(time(NULL));
for(int i=0;i<20;i++) {
for(int j=0;j<20;j++) {
array[i][j]= ((rand() % 2) == 0) ? 'O' : 'X';
cout << array[i][j];
}
cout << endl;
}
cout << endl;
for(int i=0;i<20;i++) {
for(int j=19;j>=0;j--) {
cout << array[i][j];
}
cout << endl;
}