Não consegui entender como que a função MAP consegui entender que a letra que eu chutei é verdadeira ou falsa. Não consegui relacionar a palavra secreta com a função MAP.
Não consegui entender como que a função MAP consegui entender que a letra que eu chutei é verdadeira ou falsa. Não consegui relacionar a palavra secreta com a função MAP.
Olá Alysson!
Entendo que você está com dúvidas sobre como a função map
consegue identificar se a letra que você chutou é verdadeira ou falsa. Vou tentar te explicar!
No código apresentado, a função map
é utilizada para criar um mapeamento entre as letras da palavra secreta e um valor booleano que indica se a letra já foi chutada ou não.
No trecho de código:
map <char, bool> chutou;
Estamos criando um mapa chamado chutou
que associa cada letra (do tipo char
) a um valor booleano (do tipo bool
). Inicialmente, todas as letras são associadas ao valor false
, indicando que ainda não foram chutadas.
A cada chute dado pelo usuário, a letra correspondente é marcada como true
no mapa chutou
. Isso é feito através do trecho de código:
chutou[chute] = true;
Onde chute
é a variável que armazena a letra que o usuário chutou.
Em seguida, dentro do laço de repetição for
, é verificado se a letra já foi chutada ou não através do trecho de código:
if (chutou[letra]){
cout << letra << " ";
}
else{
cout << "_ ";
}
Se a letra já foi chutada (ou seja, chutou[letra]
é true
), a letra é exibida. Caso contrário, é exibido um underline para indicar que a letra ainda não foi descoberta.
Dessa forma, a função map
permite que você relacione cada letra da palavra secreta com um valor booleano que indica se a letra já foi chutada ou não.
Espero ter ajudado a esclarecer sua dúvida! Se tiver mais alguma pergunta, é só me dizer. Bons estudos!
Espero ter ajudado e bons estudos!