4
respostas

Condicionar idade diretamente a possibilidade de dirigir ou não

Olá!

Pessoal, a dúvida que tenho é a seguinte:

Com o código mostrado no comentário do instrutor e também no dos demais colegas, sempre temos a situação qual a idade e se tem ou não a habilitação.

Porém, na rápida busca que fiz por aqui, não encontrei um código em que se a entrada de idade for menor que 18 já comunique ao usuário que ele não pode dirigir. Mesmo colocando uma idade que não teria a permissão de dirigir, os códigos vistos ainda trazem ao usuário a pergunta de se ter ou não a carteira de motorista.

Acabou que estou preso nessa dúvida e não estou conseguindo achar uma solução para que a idade já seja fator decisivo de correr ou não o restante do código.

Conseguiriam me ajudar?

Att. Daniel

<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 cartera de motorista? S ou N")

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

            mostra("Pode dirigir");

    } else {

        mostra ("Você não tem idade suficiente para dirigir de acordo com o Código de Trânsito Brasileiro");

    }

</script>
4 respostas

Olá Daniel, tudo certo?

Perceba que as perguntas estão antes das condições no código. A primeira coisa que o programa faz é perguntar ao usuário Qual é sua idade? eTem carteira de motorista? S ou N.

Se colocarmos a segunda pergunta dentro das condições, acredito que você conseguirá chegar onde deseja.

Estou colocando o código aqui, mas tente resolver primeiro rs. Acho que conseguirá só com a dica acima.

<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("Você não tem idade suficiente para dirigir de acordo com o Código de Trânsito Brasileiro");
    } else {
        var temCarteira = prompt("Tem carteira de motorista? S ou N");

        if (temCarteira == "S" || temCarteira == "s") {
            mostra("Você pode dirigir!");
        } else {
            mostra("Você não pode dirigir!");

        }
    }
</script>

Qualquer dúvida estou por aqui. Abraços!

Olá Ana! Muito obrigado pelo retorno e também pelo suporte!

Vendo a sua dica (não trapaceei e fui ver seu código conforme instruiu haha), desenvolvi o seguinte código:

<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) {

            var temCarteira = prompt("Tem carteira de motorista? S ou N");

            if (temCarteira == "S" && "s") {
                mostra ("Tudo OK! Você tem idade e permissão para dirigir!");

            } 

            if (temCarteira == "N" && "n")  {
                mostra ("Você não pode dirigir por não possuir permissão, porém você já tem idade para solicitar permissão para dirigir!");
            }

    } 

    if (idade < 18)  {

        mostra ("Você não tem idade suficiente para dirigir de acordo com o Código de Trânsito Brasileiro");

    }

</script>

O mesmo retornou o resultado que esperava!

Obrigado mais uma vez! Abraço

Daniel

Olá Ana!

Segue código revisado e otimizado:

<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) {

            var temCarteira = prompt("Tem carteira de motorista? S ou N");

            if (temCarteira == "S" && "s") {
                mostra ("Tudo OK! Você tem idade e permissão para dirigir!");

            } else {
                mostra ("Você não pode dirigir por não possuir permissão, porém você já tem idade para solicitar permissão para dirigir!");
            }

    } else {

        mostra ("Você não tem idade suficiente para dirigir de acordo com o Código de Trânsito Brasileiro");

    }

</script>

Mais uma vez obrigado!

Abraço Daniel

Olá Daniel,

O segundo código ficou excelente (acredito que não tenha trapaceado haha). Parabéns!!

Qualquer dúvida estamos por aqui.

Um forte abraço!