Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

THIS IS WHAT I HAVE SO FAR. MY OUTPUT WON\'T DECLARE A WINNER OR A TIE OR EVEN S

ID: 3660198 • Letter: T

Question

THIS IS WHAT I HAVE SO FAR. MY OUTPUT WON'T DECLARE A WINNER OR A TIE OR EVEN STOP LOOPING. I NEED HELP! import java.util.Scanner; public class TicTacToe { /** * @param args the command line arguments */ public static void move(char [][] board, char plr) { Scanner kb = new Scanner(System.in); int row, col; do { System.out.print("Enter row [1-3]: "); row = kb.nextInt(); System.out.print("Enter column [1-3]: "); col = kb.nextInt(); if(board[row-1][col-1]!='*') System.out.println("Invalid move"); }while (board[row-1][col-1]!='*'); board[row-1][col-1] = plr; } public static void prtbd(char [][] board) { //Prints out board for (int i = 0;i<3;i++) { for (int j = 0; j< 3;j++) { System.out.print(board[i][j]+ " "); } System.out.println(); } } public static boolean win(char [][] board, char plr) { if (board [0] [0] == plr && board [0] [1] == plr && board [0] [2] == plr) { return true; } if (board [1] [0] == plr && board [1] [1] == plr && board [1] [2] == plr) { return true; } if (board [2] [0] == plr && board [2] [1] == plr && board [2] [2] == plr) { return true; } else { return false; } } public static void main(String[] args) { char [][] board = {{'*','*','*'}, {'*','*','*'}, {'*','*','*'}}; while(true) { prtbd(board); move(board, 'X'); if (win(board, 'X')) { System.out.println("You won!"); } else { System.out.println("No winner yet."); } prtbd(board); move(board,'O'); if (win(board, 'O')) { System.out.println("You won!"); } else { System.out.println("No winner yet."); } }

Explanation / Answer

please rate - thanks

import java.util.Scanner;
public class TicTacToe
{ /** * @param args the command line arguments */
public static void move(char [][] board, char plr)
{ Scanner kb = new Scanner(System.in);
int row, col;
   do { System.out.print("Enter row [1-3]: ");
    row = kb.nextInt();
    System.out.print("Enter column [1-3]: ");
       col = kb.nextInt();
        if(board[row-1][col-1]!='*')
        System.out.println("Invalid move");
        }while (board[row-1][col-1]!='*');
        board[row-1][col-1] = plr; }
        public static void prtbd(char [][] board)
           { //Prints out board
            for (int i = 0;i<3;i++)
            { for (int j = 0; j< 3;j++)
            { System.out.print(board[i][j]+ " ");
            } System.out.println();
            }
            }
            public static boolean win(char [][] board, char plr)
            { int i,j;
for(i=0; i<3; i++)
    if(board[i][0]==board[i][1]&&board[i][0]==board[i][2]&&board[i][2]==plr)
             return true;
for(i=0; i<3; i++)
    if(board[0][i]==board[1][i]&&board[0][i]==board[2][i]&&board[2][i]==plr)
            return true;

if(board[0][0]==board[1][1]&&board[1][1]==board[2][2]&&board[2][2]==plr)
       return true;
if(board[0][2]==board[1][1]&&board[1][1]==board[2][0]&&board[0][2]==plr)
       return true;
    return false;
                }
                public static void main(String[] args)
                { char [][] board = {{'*','*','*'}, {'*','*','*'}, {'*','*','*'}};
                boolean gameNotOver=true;
                while(gameNotOver)
                    {
                    prtbd(board);
                      move(board, 'X');
                      if (win(board, 'X'))
                          { System.out.println("You won!");
                            gameNotOver=false;               
                          }
                        else
                          { System.out.println("No winner yet.");
                           }
                        if(gameNotOver)
                        {
                       prtbd(board);
                       move(board,'O');
                       if (win(board, 'O'))
                          { System.out.println("You won!");
                            gameNotOver=false;
                           }
                        else
                          { System.out.println("No winner yet.");
                            }
                        }
                        }
                    }
                }