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

Espero ter conseguido ir além da atividade

Eu não queria gerar somente duas repostas, pois não é por ser maior de 18 anos que você pode dirigir. Então eu decidi criar 3 condições. Você tem menos de 18 anos = "Você não tem idade para dirigir" Você tem 18 ou mais e não tem habilitação = "Você tem idade, mas deve ir até um CFC para se informar para tirar sua habilitação" Você tem 18 ou mais e tem habilitação = "Parabéns! Você está habilitado para dirigir!"

Então, depois de quebrar um pouco a cabeça, eu consegui chegar nessa programação. Gostaria de receber a opinião de vocês sobre a eficiência dele, ou ainda, o que pode ser melhorado. 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?"));

    if(idade < 18) {
        mostra("Desculpe, mas você não tem idade para dirigir");
    } else {
        var temCarteira = prompt("Tem carteira de habilitação? Responda com S ou N.")
        if (temCarteira == "S") {
        mostra("Parabéns! Você é uma pessoa habilitada a dirigir!");
        } else {
            mostra("Você tem idade para dirigir, mas não possui habilitação. Vá até um CFC mais próximo e se informe para tirar sua habilitação");
        }
    }

</script>
2 respostas
solução!

Mudaria apenas a maneira como você utilizou as condições.

"O else é usado quando não existe condição. O else if, diferente do else, ele testa uma determinada condição antes de executar o que tem dentro dele, não basta a linha de execução não ter entrado em nenhuma condição antes."

Diferenca de Else e Else if ??

<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 de habilitação? Responda com S ou N.")

    if(idade < 18) {
        mostra("Desculpe, mas você não tem idade para dirigir");
    } else if (temCarteira == "S") {        
        mostra("Parabéns! Você é uma pessoa habilitada a dirigir!");
        } else {
            mostra("Você tem idade para dirigir, mas não possui habilitação. Vá até um CFC mais próximo e se informe para tirar sua habilitação");
        }


</script>

Ah! Eu não sabia dessa possibilidade. Bem, pelo menos consegui fazer o mesmo, mas um pouco mais "enjambrado". hehe. Obrigado Pedro!