1
resposta

Mudança no código

Pessoal, fiz uma mudança no código pra tentar deixar o programa mais intuitivo. Quando o usuário digita uma idade menor que 18 anos, o programa já encerra na primeira pergunta sem passar para a segunda. O código está bom? Tem alguma forma de melhorá-lo? Agradeço desde já a ajuda.

<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? Responda S ou N");
            if (idade>=18 && temCarteira=="S") {
                mostra("O usuário PODE dirigir!");
            } else {
                mostra("O usuário NÃO PODE dirigir!");
            }        
    } else {
        mostra("O usuário NÃO PODE dirigir!");
    }

    mostra("Fim!");

</script>
1 resposta

NO seu codigo inseri a possibilidade do usuario digitar qualquer coisa ai inves de um numero e se ele digtar o programa para

E tambem coloquei um Toupper() para que o usuario nao precise digitar sempre "S" maiusculo toda hora, se ele tivesse digitado "S" minusculo entao o programa nao aceitaria

Tem um ajuste que pode fazer e ele ficar repetindo diversas vezes sem ter que dar F5 no browser para reiniciar o programa. O que pode fazer e que ele repita ate que atinja um numero maximo de tentativas ou ate que o usario queira fechar. Mas ai ia mudar muito o seu programa e nao quis alterar tanto a estrutua principal

var idade = parseInt(prompt("Qual é sua idade?"));

if (!isNaN(idade)) 
{

    if (idade >= 18) 
    {
        var temCarteira = prompt("Tem carteira de motorista? Responda S ou N");
            if (idade>=18 && temCarteira.toUpperCase()=="S") 
            {
                mostra("O usuário PODE dirigir!");
            } 
            else 
            {
                mostra("O usuário NÃO PODE dirigir!");
            }        
    } 
    else 
    {
        mostra("O usuário NÃO PODE dirigir!");
    }

    mostra("Fim!");
 }
 else
 {
 mostra("Numero NAO valido");
 }