Okay, I got the filling of the 2D array pretty well... now I need to keep the same values that are randomly generated into the 2D array, but reverse the order of the vertical (the 2nd for loop). So basically the 2nd for loop needs to keep the same values, but in reverse order.
But I feel like if I go into the nested for loops and rand(), it will generate all new random letters...

Does anyone know how to go about doing this??
This is what I have so far:

```
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;
 }

```

EDIT
For anyone who is curious on how to fix this, I figured it out!!
Here is the code:

```
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;
}

```