Programação Java: Jogo: Batalha Naval em Java

Linguagem Java , Programação Java, Java Curso gratis. Curso Java Oracle Como fazer o jogo Batalha Naval em Java

  • Click here to study this Java article in English

Agora que aprendemos como passar arrays (de qualquer dimensão) para métodos, já podemos fazer algo mais útil. Vamos fazer o famoso batalha naval, no modo texto.

Usaremos tudo que aprendemos até o momento em nosso curso de Java: if else , laço do while , laço for , métodos , números aleatórios , arrays , arrays multidimensionais e muita criatividade.

Regras do Jogo Batalha Naval em Java 

Há um tabuleiro de 5×5, ou seja, 25 blocos. Há 3 navios escondidos (um em cada bloco).
O objetivo do jogar é descobrir onde estão estes navios e acertá-los.
A cada tiro dado é dito se você acertou algum navio. Caso tenha errado, é dito quantos navios existem naquela linha e naquela coluna.
O jogo só acaba quando você descobrir e afundar os 3 navios.

Legenda pro usuário:
~ : água no bloco. Ainda não foi dado tiro.
* : tiro dado, não há nada ali.
X : tiro dado, havia um navio ali.

Como jogar:

A cada rodada, entre com dois números: o número da linha e o número da coluna onde quer dar o tiro.
Depois é só esperar pra ver se acertou, ou a dica.

Para os programadores Java:

O tabuleiro 5×5 é de inteiros. Ele é inicializado com valores ’-1’.
A cada tiro ele é atualizado, dependendo se o usuário acertou ou errou. Esses números servirão para exibir ’~’, ’*’ ou ‘X’ para o usuário.
Também servirão para exibir as dicas.

Legenda do tabuleiro:

-1 : nenhum tiro foi dado naquele bloco (~)
 0 : o tiro foi dado e não havia nada (*)
 1 : o usuário atirou e tinha um navio lá (X)