Jogo Da Velha Em Java

Reza March 16, 2022
Java Aberto Jogo da velha

O Jogo da Velha é um jogo popular em todo o mundo, conhecido por muitos nomes, como Tic Tac Toe, Noughts and Crosses, Xs and Os, etc. É um jogo de estratégia simples, jogado por duas pessoas em um tabuleiro 3×3. O objetivo do jogo é colocar três símbolos iguais em uma linha horizontal, vertical ou diagonal.

Como criar um Jogo da Velha em Java?

Para criar um Jogo da Velha em Java, precisamos seguir as seguintes etapas:

  1. Criar uma classe para o tabuleiro do jogo
  2. Criar uma classe para os jogadores
  3. Criar uma classe para o jogo em si
  4. Criar uma classe principal para executar o jogo

Criando a classe Tabuleiro

A classe Tabuleiro representa o tabuleiro do Jogo da Velha, que contém nove células. Cada célula pode estar vazia ou conter um símbolo ‘X’ ou ‘O’.

A classe Tabuleiro pode ter os seguintes métodos:

  • Construtor para inicializar o tabuleiro com células vazias
  • Um método para imprimir o tabuleiro na tela
  • Um método para validar se uma célula está vazia
  • Um método para marcar uma célula com um símbolo
  • Um método para verificar se o tabuleiro está cheio
  • Um método para verificar se um jogador venceu o jogo

Criando a classe Jogador

A classe Jogador representa um jogador do Jogo da Velha, que tem um nome e um símbolo (X ou O).

A classe Jogador pode ter os seguintes métodos:

For more information, please click the button below.
  • Construtor para inicializar o nome e o símbolo do jogador
  • Um método para fazer uma jogada no tabuleiro

Criando a classe Jogo

A classe Jogo representa o próprio jogo, que tem dois jogadores e um tabuleiro.

A classe Jogo pode ter os seguintes métodos:

  • Construtor para inicializar os jogadores e o tabuleiro
  • Um método para executar o jogo
  • Um método para alternar a vez dos jogadores
  • Um método para verificar se o jogo terminou

Criando a classe principal

A classe principal é responsável por criar o objeto Jogo e executar o jogo.

O código-fonte completo para o Jogo da Velha em Java pode ser encontrado em vários sites na internet. Aqui está um exemplo simples:

 public class Tabuleiro { private char[][] tabuleiro; public Tabuleiro() { tabuleiro = new char[3][3]; for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { tabuleiro[i][j] =' '; } } } public void imprimeTabuleiro() { System.out.println("-------------"); for (int i = 0; i < 3; i++) { System.out.print("| "); for (int j = 0; j < 3; j++) { System.out.print(tabuleiro[i][j] + " | "); } System.out.println(); System.out.println("-------------"); } } public boolean celulaVazia(int linha, int coluna) { return tabuleiro[linha][coluna] ==' '; } public void marcaCelula(int linha, int coluna, char simbolo) { tabuleiro[linha][coluna] = simbolo; } public boolean tabuleiroCheio() { boolean cheio = true; for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { if (tabuleiro[i][j] ==' ') { cheio = false; } } } return cheio; } public boolean jogadorVenceu(char simbolo) { for (int i = 0; i < 3; i++) { if (tabuleiro[i][0] == simbolo && tabuleiro[i][1] == simbolo && tabuleiro[i][2] == simbolo) { return true; } if (tabuleiro[0][i] == simbolo && tabuleiro[1][i] == simbolo && tabuleiro[2][i] == simbolo) { return true; } } if (tabuleiro[0][0] == simbolo && tabuleiro[1][1] == simbolo && tabuleiro[2][2] == simbolo) { return true; } if (tabuleiro[0][2] == simbolo && tabuleiro[1][1] == simbolo && tabuleiro[2][0] == simbolo) { return true; } return false; } } public class Jogador { private String nome; private char simbolo; public Jogador(String nome, char simbolo) { this.nome = nome; this.simbolo = simbolo; } public void fazJogada(Tabuleiro tabuleiro, int linha, int coluna) { tabuleiro.marcaCelula(linha, coluna, simbolo); } } public class Jogo { private Tabuleiro tabuleiro; private Jogador jogador1; private Jogador jogador2; private Jogador jogadorAtual; public Jogo(String nome1, String nome2) { tabuleiro = new Tabuleiro(); jogador1 = new Jogador(nome1, 'X'); jogador2 = new Jogador(nome2, 'O'); jogadorAtual = jogador1; } public void executaJogo() { while (true) { tabuleiro.imprimeTabuleiro(); int linha = pedeLinha(); int coluna = pedeColuna(); while (!tabuleiro.celulaVazia(linha, coluna)) { System.out.println("Célula ocupada, tente novamente."); linha = pedeLinha(); coluna = pedeColuna(); } jogadorAtual.fazJogada(tabuleiro, linha, coluna); if (tabuleiro.jogadorVenceu(jogadorAtual.simbolo)) { tabuleiro.imprimeTabuleiro(); System.out.println("Parabéns, " + jogadorAtual.nome + " venceu o jogo!"); return; } else if (tabuleiro.tabuleiroCheio()) { tabuleiro.imprimeTabuleiro(); System.out.println("Empate!"); return; } jogadorAtual = proximoJogador(); } } private int pedeLinha() { System.out.print(jogadorAtual.nome + ", informe a linha (0, 1 ou 2): "); Scanner scanner = new Scanner(System.in); return scanner.nextInt(); } private int pedeColuna() { System.out.print(jogadorAtual.nome + ", informe a coluna (0, 1 ou 2): "); Scanner scanner = new Scanner(System.in); return scanner.nextInt(); } private Jogador proximoJogador() { if (jogadorAtual == jogador1) { return jogador2; } else { return jogador1; } } } public class JogoDaVelha { public static void main(String[] args) { System.out.println("Bem-vindo ao Jogo da Velha!"); System.out.print("Informe o nome do jogador 1: "); Scanner scanner = new Scanner(System.in); String nome1 = scanner.nextLine(); System.out.print("Informe o nome do jogador 2: "); String nome2 = scanner.nextLine(); Jogo jogo = new Jogo(nome1, nome2); jogo.executaJogo(); } } 

Conclusão

O Jogo da Velha é um jogo simples e divertido que pode ser facilmente implementado em Java. O código-fonte completo para o jogo pode ser encontrado em vários sites na internet. O jogo pode ser jogado por duas pessoas, com cada jogador marcando um símbolo 'X' ou 'O' em um tabuleiro 3x3. O objetivo do jogo é colocar três sí

Related video of jogo da velha em java

Reza Herlambang

Eu sou um escritor profissional na área de educação há mais de 5 anos, escrevendo artigos sobre educação e ensino para crianças na escola.

Leave a Comment

Artikel Terkait