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

Dúvida sobre a resolução.

O código aparentemente funciona quando se escreve alguma opção dentro da caixa do prompt em relação a "Tem carteira? Responda S ou N", mas caso você não escreva nada dentro dela o comando de mensagem de "aptidão" aparece, não sei se consegui esclarecer direito minha dúvida, espero que sim, obrigado!

<meta charset="UTF-8">

<script>
    function pulaLinha() {
        document.write("<br>");
    }

    function mostra(frase) {
        document.write(frase);
        pulaLinha();
    }

    var idade = parseInt(prompt("Qual é sua idade?"));
    var temCarteira = prompt("Tem carteira? Responda S ou N");

    if(idade < 18) {

        mostra("Você não tem idade o suficiente para conduzir um veículo.");
    }

    if(idade >= 18 && temCarteira == "S", "s"){

    mostra("Você está apto para conduzir um veículo de acordo com a legislação de trânsito.");
} else {

mostra("Você não tem carteira de motorista, não pode conduzir um veículo.");
}    

</script>
3 respostas

Oi Luiz,

Para fazer a verificação de S maiúsculo e minúsculo você precisa fazer uma construção como esta:

if (idade >= 18 && (temCarteira == 'S' || temCarteira == 's')) {

Boa noite! Tentei substituir da maneira como indicou porém o código ainda apresenta erro, mesmo preenchendo com "S" ou "s" não aparece a mensagem correta.. :(

<meta charset="UTF-8">

<script>
    function pulaLinha() {
        document.write("<br>");
    }

    function mostra(frase) {
        document.write(frase);
        pulaLinha();
    }

    var idade = parseInt(prompt("Qual é sua idade?"));
    var temCarteira = prompt("Tem carteira? Responda S ou N");

    if (idade >= 18 && temCarteira == 'S' && temCarteira == 's') {

        mostra("Você está apto para conduzir um veículo.")
    } else {

        mostra("Você não pode conduzir um veículo!")
    }

</script>

Com a sua substituição indicada, ficaria dessa maneira certo?

solução!

Dei uma olhada em outras resoluções e aparentemente consegui resolver, a única maneira que funcionou pra mim foi utilizando o operador lógico OR (||) , agora parece estar certinho.. :) Ficou dessa maneira:

<meta charset="UTF-8">

<script>
    function pulaLinha() {
        document.write("<br>");
    }

    function mostra(frase) {
        document.write(frase);
        pulaLinha();
    }

    var idade = parseInt(prompt("Qual é sua idade?"));
    var temCarteira = prompt("Tem carteira? Responda S ou N");

    if (idade >= 18 && temCarteira == 'S' || temCarteira == 's') {

        mostra("Você está apto para conduzir um veículo.")
    } else {

        mostra("Você não pode conduzir um veículo!")
    }

</script>