-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathGame.h
134 lines (114 loc) · 3 KB
/
Game.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
#ifndef GAME_H_INCLUDED
#define GAME_H_INCLUDED
void printBoard(char board[][3],int,int);
void chooseLetter();
void write(char x,int r,int c,int t);
void printBoard(char board[][3],int,int);
void turn(int t);
void checkVictory(char x,int r,int c,int t);
const int row = 3;
const int column = 3;
char letter = 'X';
int r = 0;
int c = 0;
char board[row][column] = {
{'*','*','*'},
{'*','*','*'},
{'*','*','*'}
};
void game(){
int r;
int c;
int check = false;
do{
std::cout<<"Tres Rayas by emmc316\n";
printBoard(board,row,column);
std::cout<<"Type where want to point in the board example [0][0]\nr must be minor or equal than 0 and greather or equal than 2\nc must be minor or equal than 0 and greather or equal than 2\n";
do{
std::cin>>r;
std::cin>>c;
if(r>=0 && r<=2 && c>=0 && c<=2){
check = true;
}
else{
std::cout<<"Coordanadas invalidas\n";
}
}while(check = false);
write(letter,r,c,1);
write(letter,rand()%2,rand()%2,2);
printBoard(board,row,column);
checkVictory(letter,r,c,1);
checkVictory(letter,r,c,2);
system("cls");
}while(true);
}
void turn(int t){
if(t==1){
letter = 'X';
}
else
letter = 'O';
}
void write(char x,int r,int c, int t){
turn(t);
for(int i = 0;i < row;i++){
for(int j = 0; j < column; j++){
if(board[i][j]=='*' && i == r && j == c){
board[i][j] = letter;
}
}
}
system("cls");
}
void checkVictory(char x, int r, int c,int t){
turn(t);
for(int i = 0; i < row;i++){
for(int j = 0; j < column;j++){
switch(i){
case 0:
if(board[i][j]==letter && board[i+1][j]==letter && board[i+2][j]==letter){
std::cout<<"Ganaste\n";
exit(0);
}
if(board[i][j] == letter && board[i][j+1]==letter && board[i][j+2]== letter){
std::cout<<"Ganaste\n";
exit(0);
}
if(board[i][j] == letter && board[i+1][j+1] == letter && board[i+2][j+2] == letter){
std::cout<<"Ganaste\n";
exit(0);
}
break;
case 1:
if(board[i][j] == letter && board[i][j+1] == letter && board[i][j+2]== letter){
std::cout<<"Ganaste\n";
exit(0);
}
if(board[i][j] == letter && board[i+1][j+1] == letter && board[i+2][j+2] == letter){
std::cout<<"Ganaste\n";
exit(0);
}
break;
case 2:
if(board[i][j] == letter && board[i][j+1] == letter && board[i][j+2]== letter){
std::cout<<"Ganaste\n";
exit(0);
}
if(board[i][j] == letter && board[i+1][j+1] == letter && board[i+2][j+2] == letter){
std::cout<<"Ganaste\n";
exit(0);
}
break;
}
}
}
}
void printBoard(char board[][3],int,int){
for(int i = 0; i < row; i++){
for(int j = 0; j < column; j++){
std::cout<<board[i][j]<<" ";
}
std::cout<<"\n\n";
}
}
#endif // GAME_H_INCLUDED