Guest User

Untitled

a guest
Jun 18th, 2018
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.73 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int main (void) {
  6. //initialized variables
  7. char Square1 = '1';
  8. char Square2 = '2';
  9. char Square3 = '3';
  10. char Square4 = '4';
  11. char Square5 = '5';
  12. char Square6 = '6';
  13. char Square7 = '7';
  14. char Square8 = '8';
  15. char Square9 = '9';
  16. int PlayerNumber = 1;
  17. bool GameOver = false;
  18. //Game Loop
  19. do {
  20. //print board
  21. cout << Square1 << "|" << Square2 << "|" << Square3 << endl;
  22. cout << "-+-+-" << endl;
  23. cout << Square4 << "|" << Square5 << "|" << Square6 << endl;
  24. cout << "-+-+-" << endl;
  25. cout << Square7 << "|" << Square8 << "|" << Square9 << endl;
  26. //set player markers
  27. char PlayerMarker;
  28. if (PlayerNumber == 1) {
  29. PlayerMarker = 'X';
  30. } else {
  31. PlayerMarker = 'O';
  32. }
  33. //ask for player turn
  34. cout << "Player " << PlayerNumber << "'s Turn:" << endl;
  35. //valid move boolean
  36. bool MoveOK;
  37. //valid move loop
  38. do {
  39. char NextMove;
  40. cin >> NextMove;
  41. MoveOK = true;
  42. //valid move check
  43. if (NextMove == '1' && Square1 == '1') {
  44. Square1 = PlayerMarker;
  45. } else if (NextMove == '2' && Square2 == '2') {
  46. Square2 = PlayerMarker;
  47. } else if (NextMove == '3' && Square3 == '3') {
  48. Square3 = PlayerMarker;
  49. } else if (NextMove == '4' && Square4 == '4') {
  50. Square4 = PlayerMarker;
  51. } else if (NextMove == '5' && Square5 == '5') {
  52. Square5 = PlayerMarker;
  53. } else if (NextMove == '6' && Square6 == '6') {
  54. Square6 = PlayerMarker;
  55. } else if (NextMove == '7' && Square7 == '7') {
  56. Square7 = PlayerMarker;
  57. } else if (NextMove == '8' && Square8 == '8') {
  58. Square8 = PlayerMarker;
  59. } else if (NextMove == '9' && Square9 == '9') {
  60. Square9 = PlayerMarker;
  61. } else {
  62. cout << "Invalid Move. Please try again.";
  63. MoveOK = false;
  64. }
  65. } while (!MoveOK);
  66. //GameOver check
  67. GameOver = false;
  68. //GameWon defined
  69. bool GameWon = true;
  70. if (Square1 != '1') {
  71. if (Square2 == Square1 && Square3 == Square1) {
  72. GameOver = true;
  73. }
  74. if (Square4 == Square1 && Square7 == Square1) {
  75. GameOver = true;
  76. }
  77. }
  78. if (Square5 != '5') {
  79. if (Square1 == Square5 && Square9 == Square5) {
  80. GameOver = true;
  81. }
  82. if (Square2 == Square5 && Square8 == Square5) {
  83. GameOver = true;
  84. }
  85. if (Square3 == Square5 && Square7 == Square5) {
  86. GameOver = true;
  87. }
  88. if (Square4 == Square5 && Square6 == Square5) {
  89. GameOver = true;
  90. }
  91. }
  92. if (Square9 != '9') {
  93. if (Square7 == Square9 && Square8 == Square9) {
  94. GameOver = true;
  95. }
  96. if (Square3 == Square9 && Square6 == Square9) {
  97. GameOver = true;
  98. }
  99. }
  100. if (Square1 != '1' && Square2 != '2' && Square3 != '3' &&
  101. Square4 != '4' && Square5 != '5' && Square6 != '6' &&
  102. Square7 != '7' && Square8 != '8' && Square9 != '9' && !GameOver)
  103. {
  104. GameOver = true;
  105. GameWon = false;
  106. }
  107.  
  108. if (GameOver) {
  109. if (GameWon) {
  110. cout << "Player " << PlayerNumber << " wins!" << endl;
  111. }
  112. cout << Square1 << "|" << Square2 << "|" << Square3 << "|" << endl;
  113. cout << "-+-+-" << endl;
  114. cout << Square4 << "|" << Square5 << "|" << Square6 << "|" << endl;
  115. cout << "-+-+-" << endl;
  116. cout << Square7 << "|" << Square8 << "|" << Square9 << "|" << endl;
  117.  
  118. char PlayAgain; //ask to play again
  119. cout << "Would you like to play again? <y/n>";
  120. cin >> PlayAgain;
  121. if (PlayAgain == 'y')
  122. {
  123. GameOver = false;
  124. Square1 = '1';
  125. Square2 = '2';
  126. Square3 = '3';
  127. Square4 = '4';
  128. Square5 = '5';
  129. Square6 = '6';
  130. Square7 = '7';
  131. Square8 = '8';
  132. Square9 = '9';
  133. }
  134. PlayerNumber = 1;
  135. } else { //alternate player turns
  136. if(PlayerNumber == 1)
  137. {
  138. PlayerNumber = 2;
  139. }
  140. else {
  141. PlayerNumber = 1;
  142. }
  143. }
  144. } while (!GameOver);
  145. }
Add Comment
Please, Sign In to add comment