Advertisement
Guest User

Untitled

a guest
Nov 15th, 2019
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.51 KB | None | 0 0
  1. import java.util.Scanner;
  2.  
  3. public class TicTacToe
  4. {
  5. public static boolean winner = false;
  6. public static int counter = 0;
  7. public static boolean turn = true;
  8.  
  9. public static void main(String [] args)
  10. {
  11. char [][] grid = {{'1','2','3'},{'4','5','6'},{'7','8','9'}};
  12. System.out.println("Welcome to Tic Tac Toe!");
  13.  
  14. Scanner scn = new Scanner(System.in);
  15.  
  16. System.out.println("Enter player 1's name:");
  17. String player1 = scn.next();
  18.  
  19. System.out.println("Enter player 2's name:");
  20. String player2 = scn.next();
  21.  
  22. print(grid);
  23.  
  24. do{
  25. if (turn){
  26. System.out.println(player1+", pick your slot");
  27. } else {
  28. System.out.println(player2+", pick your slot");
  29. }
  30.  
  31. int slot = scn.nextInt();
  32. play(grid, slot);
  33. print(grid);
  34. checkWinner(grid);
  35.  
  36. } while (!winner && counter < 9);
  37.  
  38. if (winner){
  39.  
  40. if (turn){
  41. System.out.println(player1+" won!");
  42. } else {
  43. System.out.println(player2+" won!");
  44. }
  45.  
  46. }
  47.  
  48. }
  49.  
  50. public static void print(char [][] grid)
  51. {
  52. System.out.println("-------------");
  53. for(int i = 0; i < grid.length; i++){
  54. System.out.print("| ");
  55. for(int j = 0; j < grid[i].length; j++){
  56. System.out.print(grid[i][j]+" | ");
  57. }
  58. System.out.println();
  59. System.out.println("-------------");
  60. }
  61. }
  62.  
  63. public static void play(char [][] grid, int slot)
  64. {
  65. switch (slot) {
  66.  
  67. case 1:
  68. if (grid [0][0] != '1'){
  69. System.out.println("Choose another slot");
  70. } else {
  71. if(turn){
  72. grid[0][0] = 'X';
  73. } else {
  74. grid[0][0] = 'O';
  75. }
  76. turn=!turn;
  77. counter++;
  78. }
  79. break;
  80.  
  81. case 2:
  82. if (grid [0][1] != '2'){
  83. System.out.println("Choose another slot");
  84. } else {
  85. if(turn){
  86. grid[0][1] = 'X';
  87. } else {
  88. grid[0][1] = 'O';
  89. }
  90. turn=!turn;
  91. counter++;
  92. }
  93. break;
  94.  
  95. case 3:
  96. if (grid [0][2] != '3'){
  97. System.out.println("Choose another slot");
  98. } else {
  99. if(turn){
  100. grid[0][2] = 'X';
  101. } else {
  102. grid[0][2] = 'O';
  103. }
  104. turn=!turn;
  105. counter++;
  106. }
  107. break;
  108.  
  109. case 4:
  110. if (grid [1][0] != '4'){
  111. System.out.println("Choose another slot");
  112. } else {
  113. if(turn){
  114. grid[1][0] = 'X';
  115. } else {
  116. grid[1][0] = 'O';
  117. }
  118. turn=!turn;
  119. counter++;
  120. }
  121. break;
  122.  
  123. case 5:
  124. if (grid [1][1] != '5'){
  125. System.out.println("Choose another slot");
  126. } else {
  127. if(turn){
  128. grid[1][1] = 'X';
  129. } else {
  130. grid[1][1] = 'O';
  131. }
  132. turn=!turn;
  133. counter++;
  134. }
  135. break;
  136.  
  137. case 6:
  138. if (grida [1][2] != '6'){
  139. System.out.println("Choose another slot");
  140. } else {
  141. if(turn){
  142. grid[1][2] = 'X';
  143. } else {
  144. grid[1][2] = 'O';
  145. }
  146. turn=!turn;
  147. counter++;
  148. }
  149. break;
  150.  
  151. case 7:
  152. if (grid [2][0] != '7'){
  153. System.out.println("Choose another slot");
  154. } else {
  155. if(turn){
  156. grid[2][0] = 'X';
  157. } else {
  158. grid[2][0] = 'O';
  159. }
  160. turn=!turn;
  161. counter++;
  162. }
  163. break;
  164.  
  165. case 8:
  166. if (grid [2][1] != '8'){
  167. System.out.println("Choose another slot");
  168. } else {
  169. if(turn){
  170. grid[2][1] = 'X';
  171. } else {
  172. grid[2][1] = 'O';
  173. }
  174. turn=!turn;
  175. counter++;
  176. }
  177. break;
  178.  
  179. case 9:
  180. if (grid [2][2] != '9'){
  181. System.out.println("Choose another slot");
  182. } else {
  183. if(turn){
  184. grid[2][2] = 'X';
  185. } else {
  186. grid[2][2] = 'O';
  187. }
  188. turn=!turn;
  189. counter++;
  190. }
  191. break;
  192.  
  193. default:
  194. System.out.println("Invalid slot, choose another one");
  195. }
  196. }
  197.  
  198. public static void checkWinner(char [][] grid)
  199. {
  200. if (grid[0][0] == grid[0][1] && grid[0][1] == grid[0][2]){
  201. winner = true;
  202. }
  203. else if (grid[1][0] == grid[1][1] && grid[1][1] == grid[1][2]){
  204. winner = true;
  205. }
  206. else if (grid[2][0] == grid[2][1] && grid[2][1] == grid[2][2]){
  207. winner = true;
  208. }
  209. else if (grid[0][0] == grid[1][0] && grid[1][0] == grid[2][0]){
  210. winner = true;
  211. }
  212. else if (grid[0][1] == grid[1][1] && grid[1][1] == grid[2][1]){
  213. winner = true;
  214. }
  215. else if (grid[0][2] == grid[1][2] && grid[1][2] == grid[2][2]){
  216. winner = true;
  217. }
  218. else if (grid[0][0] == grid[1][1] && grid[1][1] == grid[2][2]){
  219. winner = true;
  220. }
  221. else if (grid[0][2] == grid[1][1] && grid[1][1] == grid[2][0]){
  222. winner = true;
  223. }
  224. else {
  225. winner = false;
  226. }
  227. }
  228.  
  229.  
  230. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement