1
resposta

A resposta está sempre "Não pode dirigir"

Não consegui resolver, mesmo copando e colado o código do professor não aparece a resposta "Pode dirigir". O que esto fazendo de errado. 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 && temCarteira == "S") {
        mostra("Pode dirigir");
    } else {
        mostra("Não pode dirigir");
    }
</script>
1 resposta

Oi Carlos, tudo bem?

Copiei seu código aqui e funcionou como esperado... Você não está digitando "s" minúsculo? Veja que ele está esperando o "S" maiúsculo no if. Existem dois métodos para usar em comparações de strings, são eles: toUpperCase() e o toLowerCase(). Eles transformam a string toda em maiúscula ou minúscula respectivamente. Ex:

if( idade >= 18 && temCarteira.toUpperCase() == "S") {
    .........
}

Desse modo, independente se o usuário digitar o "s" maiúsculo ou minúsculo, ele sempre será comparado como maiúsculo.