|
|
TIC TAC TOE GAME.......
#include<iostream.h> #include<conio.h> #include<stdio.h>
void main() { begin: clrscr(); void showgame(char,char,char,char,char,char,char,char,char); int choicex,choicey,flag=0,counter=1,finalchoice; char a1,a2,a3,a4,a5,a6,a7,a8,a9,ch,pl1[20],pl2[20]; a1=' '; a2=' '; a3=' '; a4=' '; a5=' '; a6=' '; a7=' '; a8=' '; a9=' '; cout<<" WELCOME TO TIC-TAC-TOE THE OBJECTIVE OF THE GAME IS TO MAKE YOUR SYMBOL (EITHER 'X' OR 'O' TO TYPE IN A ROW EITHER VERTICALLY OR HORIZONTALLY OR DIAGONALLY AND ALSO TO PREVENT YOUR OPPONENT FROM DOING SO SO I WISH BOTH THE PLAYERS BEST OF LUCK!!!"; cin.get(ch); clrscr();
cout<<"PLAYER1 ENTER YOUR NAME :";
cin.getline(pl1,20);
cout<<" PLAYER2 ENTER YOUR NAME :";
cin.getline(pl2,20); clrscr(); cout<<" HELLO "<<pl1<<" & "<<pl2; cin.get(ch); clrscr();
rematch: counter=1; clrscr(); a1=' '; a2=' '; a3=' '; a4=' '; a5=' '; a6=' '; a7=' '; a8=' '; a9=' ';
do { xagain: clrscr(); showgame(a1,a2,a3,a4,a5,a6,a7,a8,a9); cout<<" "<<pl1<<" PLEASE ENTER YOUR MOVE"; cin>>choicex; switch (choicex) { case 11: clrscr(); if(a1!='Y') { counter++; a1='X'; showgame(a1,a2,a3,a4,a5,a6,a7,a8,a9); } else if(a1=='Y') { cout<<" SORRY "<<pl2<<" HAS ALREADY MADE THE MOVE HERE PRESS ENTER TO RE-ENTER YOUR MOVE"; cin.get(ch);
goto xagain; } break;
case 12: clrscr(); if(a2!='Y') { counter++; a2='X'; showgame(a1,a2,a3,a4,a5,a6,a7,a8,a9); } else if(a2=='Y') { cout<<" SORRY "<<pl2<<" HAS ALREADY MADE THE MOVE HERE"; cin.get(ch); goto xagain; } break;
case 13: clrscr(); if(a3!='Y') { counter++; a3='X'; showgame(a1,a2,a3,a4,a5,a6,a7,a8,a9); } else if(a3=='Y') { cout<<" SORRY "<<pl2<<" HAS ALREADY MADE THE MOVE HERE"; cin.get(ch); goto xagain; } break;
case 21: clrscr(); if(a4!='Y') { counter++; a4='X'; showgame(a1,a2,a3,a4,a5,a6,a7,a8,a9); } else if(a4=='Y') { cout<<" SORRY "<<pl2<<" HAS ALREADY MADE THE MOVE HERE"; cin.get(ch); goto xagain; } break; case 22: clrscr(); if(a5!='Y') { counter++; a5='X'; showgame(a1,a2,a3,a4,a5,a6,a7,a8,a9); } else if(a5=='Y') { cout<<" SORRY "<<pl2<<" HAS ALREADY MADE THE MOVE HERE"; cin.get(ch); goto xagain; } break;
case 23: clrscr(); if(a6!='Y') { counter++; a6='X'; showgame(a1,a2,a3,a4,a5,a6,a7,a8,a9); } else if(a6=='Y') { cout<<" SORRY "<<pl2<<" HAS ALREADY MADE THE MOVE HERE"; cin.get(ch); goto xagain; } break;
case 31: clrscr(); if(a7!='Y') { counter++; a7='X'; showgame(a1,a2,a3,a4,a5,a6,a7,a8,a9); } else if(a7=='Y') { cout<<" SORRY "<<pl2<<" HAS ALREADY MADE THE MOVE HERE"; cin.get(ch); goto xagain; } break;
case 32: clrscr(); if(a8!='Y') { counter++; a8='X'; showgame(a1,a2,a3,a4,a5,a6,a7,a8,a9); } else if(a8=='Y') { cout<<" SORRY "<<pl2<<" HAS ALREADY MADE THE MOVE HERE"; cin.get(ch); goto xagain; } break;
case 33: clrscr(); if(a9!='Y') { counter++; a9='X'; showgame(a1,a2,a3,a4,a5,a6,a7,a8,a9); }
else if(a9=='Y') { cout<<" SORRY "<<pl2<<" HAS ALREADY MADE THE MOVE HERE"; cin.get(ch); goto xagain; } break;
default: cout<<"SORRY ILLEGAL MOVE"; goto xagain; }
if( (a1=='X'&&a2=='X'&&a3=='X') || (a4=='X' && a5=='X' && a6=='X') || ( a7=='X' && a8=='X' && a9=='X') || (a1=='X'&&a4=='X'&&a7=='X') || (a2=='X'&& a5=='X' && a8=='X') || (a3=='X' && a6=='X' && a9=='X') || (a1=='X' && a5=='X' && a9=='X') || (a3=='X'&& a5=='X' && a7=='X') ) { cout<<pl1<<" WINS!!!"; cin.get(ch);
flag++; cin.get(ch); cout<<" THANK YOU FOR PLAYING TIC-TAC-TOE"; cout<<" PRESS 1 FOR RE-MATCH BETWEEN THE SAME PLAYERS"; cout<<" PRESS 2 FOR NEW GAME"; cout<<" PRESS 3 TO QUIT THE GAME"; cin>>finalchoice; if(finalchoice==1) goto rematch; else if (finalchoice==2) goto begin; else if(finalchoice==3) goto finish; else
break; }
yagain: clrscr(); showgame(a1,a2,a3,a4,a5,a6,a7,a8,a9); cout<<" "<<pl2<<" PLEASE ENTER YOUR MOVE"; cin>>choicey; switch(choicey) { case 11: clrscr(); if (a1!='X') { counter++; a1='Y'; showgame(a1,a2,a3,a4,a5,a6,a7,a8,a9); } else if(a1=='X') { cout<<" SORRY "<<pl1<<" HAS ALREADY MADE THE MOVE HERE"; cin.get(ch); goto yagain; } break;
case 12: clrscr(); if (a2!='X') { counter++; a2='Y'; showgame(a1,a2,a3,a4,a5,a6,a7,a8,a9); } else if(a2=='X') { cout<<" SORRY "<<pl1<<" HAS ALREADY MADE THE MOVE HERE"; cin.get(ch); goto yagain; } break;
case 13: clrscr(); if (a3!='X') { counter++; a3='Y'; showgame(a1,a2,a3,a4,a5,a6,a7,a8,a9); } else if(a3=='X') { cout<<" SORRY "<<pl1<<" HAS ALREADY MADE THE MOVE HERE"; cin.get(ch); goto yagain; } break;
case 21: clrscr(); if (a4!='X') { counter++; a4='Y'; showgame(a1,a2,a3,a4,a5,a6,a7,a8,a9); } else if(a4=='X') { cout<<" SORRY "<<pl1<<" HAS ALREADY MADE THE MOVE HERE"; cin.get(ch); goto yagain; } break; case 22: clrscr(); if (a5!='X') { counter++; a5='Y'; showgame(a1,a2,a3,a4,a5,a6,a7,a8,a9); } else if(a5=='X') { cout<<" SORRY "<<pl1<<" HAS ALREADY MADE THE MOVE HERE"; cin.get(ch); goto yagain; } break;
case 23: clrscr(); if (a6!='X') { counter++; a6='Y'; showgame(a1,a2,a3,a4,a5,a6,a7,a8,a9); }
else if(a6=='X') { cout<<" SORRY "<<pl1<<" HAS ALREADY MADE THE MOVE HERE"; cin.get(ch); goto yagain; } break;
case 31: clrscr(); if (a7!='X') { counter++; a7='Y'; showgame(a1,a2,a3,a4,a5,a6,a7,a8,a9); } else if(a7=='X') { cout<<" SORRY "<<pl1<<" HAS ALREADY MADE THE MOVE HERE"; cin.get(ch); goto yagain; } break;
case 32: clrscr(); if (a8!='X') { counter++; a8='Y'; showgame(a1,a2,a3,a4,a5,a6,a7,a8,a9); } else if(a8=='X') { cout<<" SORRY "<<pl1<<" HAS ALREADY MADE THE MOVE HERE"; cin.get(ch); goto yagain; } break;
case 33: clrscr(); if (a9!='X') { counter++; a9='Y'; showgame(a1,a2,a3,a4,a5,a6,a7,a8,a9); } else if(a9=='X') { cout<<" SORRY "<<pl1<<" HAS ALREADY MADE THE MOVE HERE"; cin.get(ch); goto yagain; } break;
default: cout<<"SORRY ILLEGAL MOVE"; goto yagain; }
if( (a1=='Y'&&a2=='Y'&&a3=='Y') || (a4=='Y' && a5=='Y' && a6=='Y') || ( a7=='Y' && a8=='Y' && a9=='Y') || (a1=='Y'&&a4=='Y'&&a7=='Y') || (a2=='Y'&& a5=='Y' && a8=='Y') || (a3=='Y' && a6=='Y' && a9=='Y') || (a1=='Y' && a5=='Y' && a9=='Y') || (a3=='Y'&& a5=='Y' && a7=='Y') ) { cout<<pl2<<" WINS!!!"; cin.get(ch); flag++; cin.get(ch); cout<<" THANK YOU FOR PLAYING TIC-TAC-TOE"; cout<<" PRESS 1 FOR RE-MATCH BETWEEN THE SAME PLAYERS"; cout<<" PRESS 2 FOR NEW GAME"; cout<<" PRESS 3 TO QUIT THE GAME"; cin>>finalchoice; if(finalchoice==1) goto rematch; else if (finalchoice==2) goto begin; else if(finalchoice==3) goto finish; else
break; }
}while(counter<=9 );
if(flag==0) { cout<<"THE GAME ENDS IN A DRAW"; cout<<" THANK YOU FOR PLAYING TIC-TAC-TOE"; cout<<" PRESS 1 FOR RE-MATCH BETWEEN THE SAME PLAYERS"; cout<<" PRESS 2 FOR NEW GAME"; cout<<" PRESS 3 TO QUIT THE GAME"; cin>>finalchoice; if(finalchoice==1) goto rematch; else if (finalchoice==2) goto begin; else if(finalchoice==3) goto finish;
}
getch(); finish: } void showgame(char z1,char z2,char z3,char z4,char z5,char z6,char z7,char z8,char z9) { cout<<" 1 2 3 "; cout<<" | | "; cout<<" | | "; cout<<" 1 "<<z1<<" | "<<z2<<" | "<<z3<<" "; cout<<" ________|_________|________"; cout<<" | | "; cout<<" | | "; cout<<" 2 "<<z4<<" | "<<z5<<" | "<<z6<<" "; cout<<" ________|_________|________"; cout<<" | | "; cout<<" 3 "<<z7<<" | "<<z8<<" | "<<z9<<" "; cout<<" | | ";
}
|