What's new

Closed Tiktakto (console)

Status
Not open for further replies.

PHC-newbee

Eternal Poster
Joined
Feb 2, 2015
Posts
1,521
Reaction
546
Points
454
Code:
/*
https://phcorner.net/m/phc-newbee.287510
*/
import java.util.Scanner;


public class Tiktakto
{
    private int counter;
    private   char bee[]=new char[10];
    private   char player;
    
    
    public static void main(String args[])
    {
        String ch;
        Tiktakto to=new Tiktakto();
        do{
            to.newBoard();
            to.play();
            System.out.println ("Enter 'yes' to play again ");
            Scanner in =new Scanner(System.in);
            ch=in.nextLine();
            System.out.println("ch value is  "+ch);
        }
        while (ch.equals("yes"));
        
        
    }
    public  void newBoard()
    {
        
        char beedef[] = {'0','1', '2', '3', '4', '5', '6', '7', '8', '9'};
        int i;
        counter = 0;
        player = 'X';
        for (i=1; i<10; i++) bee[i]=beedef[i];
        currentBoard();
    }
/*
https://phcorner.net/m/phc-newbee.287510
*/
    public  String currentBoard()
    {
        System.out.println( "\n\n" );
        System.out.println(  "\n\n" );
        System.out.println(  "\n\n\t\t" + bee [1] + "   | " +bee [2]+ "  | " +bee [3]);
        System.out.println(  " \t\t    |    |   " );
        System.out.println(  " \t\t ___|____|___ " );
        System.out.println(  "\n\n\t\t" +bee [4]+ "   | " +bee [5]+ "  | " +bee [6]);
        System.out.println(  " \t\t    |    |   " );
        System.out.println(  " \t\t ___|____|___ " );
        System.out.println(  "\n\n\t\t" +bee [7]+ "   | " +bee [8]+ "  | " +bee [9]);
        System.out.println(  " \t\t    |    |   " );
        System.out.println(  " \t\t    |    |   " );
        System.out.println(  "\n\n" );
        return "currentBoard";
    }
    public  void play()
    {
        int spot;
        char blank = ' ';
        
        System.out.println(  "Player " + getPlayer() +" will turn first." );
        
        do {
            currentBoard();
            
            System.out.println(  "\n\n Player " + getPlayer() +" it's your turn." );
            
            boolean posTaken = true;
            while (posTaken) {
                Scanner in =new Scanner (System.in);
                spot=in.nextInt();
                posTaken = checkbee(spot);
                if(posTaken==false)
                bee[spot]=getPlayer();
            }
            System.out.println(  "Nice move." );
            
            currentBoard();
            
            nextPlayer();
        }while ( checkWinner() == blank );
        
    }
/*
https://phcorner.net/m/phc-newbee.287510
*/
    public  char checkWinner()
    {
        char Winner = ' ';
        if (bee[1] == 'X' && bee[2] == 'X' && bee[3] == 'X') Winner = 'X';
        if (bee[4] == 'X' && bee[5] == 'X' && bee[6] == 'X') Winner = 'X';
        if (bee[7] == 'X' && bee[8] == 'X' && bee[9] == 'X') Winner = 'X';
        if (bee[1] == 'X' && bee[4] == 'X' && bee[7] == 'X') Winner = 'X';
        if (bee[2] == 'X' && bee[5] == 'X' && bee[8] == 'X') Winner = 'X';
        if (bee[3] == 'X' && bee[6] == 'X' && bee[9] == 'X') Winner = 'X';
        if (bee[1] == 'X' && bee[5] == 'X' && bee[9] == 'X') Winner = 'X';
        if (bee[3] == 'X' && bee[5] == 'X' && bee[7] == 'X') Winner = 'X';
        if (Winner == 'X' )
        {System.out.println("Player-X wins the game." );
            return Winner;
        }
/*
https://phcorner.net/m/phc-newbee.287510
*/
        if (bee[1] == 'O' && bee[2] == 'O' && bee[3] == 'O') Winner = 'O';
        if (bee[4] == 'O' && bee[5] == 'O' && bee[6] == 'O') Winner = 'O';
        if (bee[7] == 'O' && bee[8] == 'O' && bee[9] == 'O') Winner = 'O';
        if (bee[1] == 'O' && bee[4] == 'O' && bee[7] == 'O') Winner = 'O';
        if (bee[2] == 'O' && bee[5] == 'O' && bee[8] == 'O') Winner = 'O';
        if (bee[3] == 'O' && bee[6] == 'O' && bee[9] == 'O') Winner = 'O';
        if (bee[1] == 'O' && bee[5] == 'O' && bee[9] == 'O') Winner = 'O';
        if (bee[3] == 'O' && bee[5] == 'O' && bee[7] == 'O') Winner = 'O';
        if (Winner == 'O' )
        {
            System.out.println( "Player-O wins the game." );
        return Winner; }
        for(int i=1;i<10;i++)
        {
            if(bee[i]=='X' || bee[i]=='O')
            {
                if(i==9)
                {
                    char Draw='D';
                    System.out.println(" Game is draw ");
                    return Draw;
                }
                continue;
            }
            else
            break;
            
        }
        
        return Winner;
    }
/*
https://phcorner.net/m/phc-newbee.287510
*/
    public  boolean checkbee(int spot)
    {
        if (bee[spot] == 'X' || bee[spot] == 'O')
        {
            System.out.println("Already taken, please choose again");
            return true;
        }
        else {
            return false;
        }
    }
    public  void nextPlayer()
    {
        if (player == 'X')
        player = 'O';
        else player = 'X';   
    }
    
    public String getTitle()
    {
        return "Tiktakto" ;
    }
    
    public  char getPlayer()
    {
        return player;
    }
}
/*
https://phcorner.net/m/phc-newbee.287510
*/
 
Status
Not open for further replies.

Similar threads

Back
Top