2D array[3][3]
の値を1-9
からrand()
を使用してランダム化してから、intを解析して配列に配置します。ランダム化2D配列
#include <cstdlib>
#include <ctime>
#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;
void showgame();
void player();
bool gameover();
char player1, player2;
char user;
bool tie = false;
const int ROW = 3;
const int COL = 3;
int bboard[ROW][COL];
char aboard[3][3]= {{'1', '2', '3'},
{'4', '5', '6'},
{'7', '8', '9'}};
int main()
{
unsigned seed = time(0);
srand(seed);
for(int i=0; i<ROW; i++)
for(int j=0; j<COL; j++)
bboard[i][j] = char (rand() % i*COL+j+1);
結果は、ハードコードされたtictactoeボードとランダム化されたボードになります。 (aboard
)セルが選択された場合、1-9
X
またはO
は、勝利のチャンスを与えられたランダムなセルに配置されます。私はこれを行う様々な方法を試みたが、誰もコンパイルしていない。このメソッドはコンパイルされますが、以前に遭遇したことのないエラーが発生したり、問題を見つけることができません。 ROW
、COL
およびbboard
の宣言をmain
に移動しようとしましたが、まだコンパイルできません。プログラムは、main
の外側にあるのハードコードの2D
で実行されますが、rand()
はmain
の範囲内にある必要がありますか?
----jGRASP wedge: process died on signal 8.
----jGRASP: operation complete.