• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

andrw

Jogo em C++

3 mensagens neste tópico

Boas!

Estou a tentar fazer uma versão do jogo mastermind em c++ para a cadeira de programação na faculdade...

O programa deve perguntar, entre outras coisas, o numero de caracteres a usar na combinação (gerada aleatoriamente) e o número máximo de tentativas. De cada vez que for feita uma aposta deve ser apresentado o tabuleiro actualizado:

Exemplo de tabuleiro:

aabb | w - a resposta 'w' indica que tem uma letra mas na posição errada; aabb foi a 1ª aposta;

ecca | rw - indica que uma letra esta bem e outra existe mas está na posição errada

**** | ****

**** | ****

**** | ****

**** | ****

**** | ****

**** | ****

Aposta? fefa

Resposta: rw

Neste caso do exemplo, o nº de tentativas é 8 (n de linhas do tabuleiro) e o numero de caracteres da combinação é 4 (nº de *'s)

Desta forma o numero de linhas do tabuleiro será dado por ntentativas.size() e os dois lados do tabuleiro deverão ter cada um dimensão igual a ncaracteres.size()

Estava a pensar usar dois vectores de strings: um para guardar as apostas e outro as respectivas respostas

A minha dúvida é qual a melhor opção para mostrar o tabuleiro em função dos parâmetros pedidos no inicio do jogo e o poder ir mostrando actualizado com as apostas/respostas que forem sendo dadas...

Espero ter conseguido explicar o problema... se me pudessem dar uma ajuda agradecia, cumprimentos []

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não percebo porque é que não colocas as tuas dúvidas no moodle da cadeira. É para isso que ele serve e lá recebias a minha ajuda e também dos outros professores.

A tua opção pelos 2 vectores parece-me correcta. Quanto ao mostrar o tabuleiro, não percebo bem a tua dúvida... usar um ciclo é suficiente...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Já consegui resolver o problema. Obrigado pela ajuda Sr. Professor.. =P

Cumprimentos

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora