Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

dúvida

Se eu crio um jogo de adivinhações com palavras, quiz, etc,

e que a resposta certa esteja declarada com a primeira letra maíuscula, como faço pra que se o usuário digitar a palavra correta mas com letra minúscula, ou toda maiúscula

o programa considere correto da mesma forma?

não sei se deu pra entender kkkk

por exemplo, se eu usar uma uma variável chamada

var resposta1 = "Maçã" e o usuário digitar "maçã"ou "MAÇÃ" ou "MAÇA"

4 respostas

O que da pra fazer, é você colocar - var resposta1 = MAÇÃ, e na hora que você for pegar a resposta do usuário, você coloca um método chamado toUpperCase(), que ele vai converter o que o usuário digitar em letras maíusculas. Então, quando você for verificar a resposta dele com sua variável resposta1 vai dar certo. A questão do acento, se ele colocar sem, eu nunca testei, mas acho que não da certo. Mas se ele colocar sem o acento, tecnicamente falando a resposta está errada, pois Maçã tem acento.

Olá Gabriela,

Você pode usar o método toLowerCase() para converter tudo para minúsculo ou toUpperCase() para converter tudo para maiúsculo, exemplo:

var resposta1 = "Maçã";
var respostaUsuario = "maçã";

if (resposta1.toLowerCase() === repostaUsuario.toLowerCase()) {
            // resposta certa
} else {
            // resposta errada
}

Fonte aqui

Abraços!

existe alguma forma de se fazer isso sem o uso do IF e só com uma variável?

por exemplo, se eu tenho um quiz com três respostas, qual seria a forma de não ficar repetitivo

solução!

Você pode usar Array para criar um array de perguntas e um array de respostas, e iterar sobre o indice. De toda forma vai precisar de pelo menos 1 IF para verificar se o usuário acertou, e de uma variável para armazenar a resposta do usuário.