4
respostas

Solução - Será que posso dirigir?

Essa eu me bati um pouco para descobrir porque o meu código estava dando errado. Só percebi quando o console acusou que S não estava definido e o programa começou a mostrar algum resultado quando criei as variáveis S e N. Daí lembrei que o prompt sempre retorna string, então tinha que sinalizar ao programa que a variável temCarteira deveria ser igual a string "S".

Deu certo nesta 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") {
        mostra("Pode dirigir")
    } else{
        mostra("Não pode dirigir")
    }

</script>
4 respostas

Oi Rafael, como vai?

Isso mesmo! Ótima solução.

Parabéns pelo empenho nos estudos!

Caso tenha quaisquer comentários ou dúvidas a respeito de alguma aula ou desafio, pode postar aqui no fórum que vamos te responder!

Abraços e bons estudos!

Boa Rafael,

Estou no mesmo exercicio, porém, a solução do professor tem um problema. Se o usuario entrar com o "s" minusculo o programa entende como negativa para o nosso código, então ele diz que a pessoa não pode dirigir. Para resolver isso eu fiz desta forma abaixo, porém, acredito que uma forma mais pratica de resolver seria converter o input do usuario para maiusculo, mas ainda não aprendi a fazer isso.

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

        mostra("Parabéns, você pode dirigir!");
    } else {

        mostra("Você ainda não cumpre com os minimos requeridos pela lei para dirigir");
    }

Oi Rafhael, como vai?

Fico feliz que compartilhou sua solução aqui no fórum.

A conversão do input do usuário para maíusculo pode ser feita utilizando a função toUpperCase do Javascript, aqui o exemplo de como utiliza-lá:

var temCarteira = prompt("Tem carteira? Responda S ou N").toUpperCase();

Espero que te ajude.

Caso tenha quaisquer comentários ou dúvidas a respeito de alguma aula ou desafio, pode postar aqui no fórum que vamos te responder!

Abraços e bons estudos!

Opa, Rafhael!

Sequer tinha pensado nisso! Também não sabia o sinal de "ou" do javascript. Boa dica para direcionar melhor os comandos do usuário!