80 likes | 168 Views
Batalha Naval. Programação II. Guilherme Artém dos Santos Laíza Araújo de Souza Rodrigo Biancard Rodrigues Gomes. Batalha Urbana.
E N D
Batalha Naval Programação II Guilherme Artém dos Santos Laíza Araújo de Souza Rodrigo Biancard Rodrigues Gomes
Batalha Urbana Batalha naval é um jogo de tabuleiro de dois jogadores, no qual os jogadores têm de adivinhar em quais coordenadas estão os navios do oponente. Embora o primeiro jogo em tabuleiro comercializado e publicado pela Milton Bradley Company em 1931, o jogo foi originalmente jogado com lápis e papel. Batalha urbana segue os mesmo princípios do jogo batalha naval, porém são dispostos automóveis no tabuleiro.
Antes do início do jogo, cada jogador coloca os seus automóveis nos campos, alinhados horizontalmente ou verticalmente. O número de automóveis permitidos é igual para ambos jogadores e os automóveis não podem se sobrepor. Após os automóveis terem sido posicionados o jogo continua numa série de turnos, em cada turno um jogador diz uma coordenada do campo do oponente. O objetivo do jogo é encontrar todos os automóveis do adversário. Quem encontrar primeiro vence o jogo.
Campos O campo dos jogadores são arquivos de texto que serão lidos pelo programa. O campo do computador por sua vez, é gerado por funções que inserem, aleatoriamente, os automóveis em suas respectivas quantidades verificando antes se já existiam outros automóveis nas coordenadas, além de garantir que eles não ultrapassem os limites do campo.
Jogadas Para analisar as jogadas feitas, o programa compara a coordenada informada com o campo . Para o computador realizar as jogadas, foram preciso algumas funções que fizeram a inteligência das jogadas.
Inteligência Primeiro o computador escolhe uma coordenada, aleatoriamente. Caso não haja automóvel nesta coordenada, novas escolhas aleatórias serão feitas. No caso de haver um automóvel, o programa irá, nos próximos turnos, procurar o resto dele.
Esta procura é feita da seguinte forma: Procura-se o resto do automóvel seguindo a seguinte ordem de sentido: direita, esquerda, para cima, para baixo.Enquanto achar partes do automóvel em um sentido, continua a percorrer. Caso não encontre mais, muda o sentido de procura.
Se enquanto estiver procurando o resto de um automóvel o computador achar um outro, ele irá guardar a coordenada deste novo automóvel para depois que encontrar o primeiro por inteiro, procurar o restante do segundo. E no caso de encontrar mais de um automóvel, ele irá procurar do último encontrado para o primeiro.