2
respostas

IF ELSE APRESENTAM A MESMA RESPOSTA FINAL

O resposta é sempre a mesma. Retorna "Não pode dirigir" independente se eu informo maior de 18 com habilitação. Não consigo resolver.

<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>
2 respostas

Oi wilson, o bloco If-Else faz parte de uma estrutura só, em português, a estrutura seria assim: SE (a idade for maior ou igual a 18 E tem carteira) pode dirigir, SE NÃO, não pode dirigir. Desta forma, a estrutura na programação fica:

if (condições){
    (bloco de código que acontecerá se as condições forem verdadeiras)
} else {
    (bloco de código que acontecerá se as tudo que estiver em cima tenha falhado)
}

É importante prestar atenção as chaves ( { } ) que marcam os blocos de código

você fez assim:
if(...) {
    ...
}

else{
    ...
}

sendo duas coisas separadas

dessa forma, como o else indica que independente de qualquer coisa, ele será executado, é importante que ele esteja encadeado com o if, como mostrei em cima.

Espero ter ajudado.

Att, pedro

Obrigado pela ajuda. Continuo sem conseguir resolver. Não sei se estou muito cansado e não estou vendo algum erro. Fiz conforme vc orientou. Ja escrevi o mesmo código duas vezes e não consigo acertar. Mesmo fornecendo a idade 25 e carteira "S" o retorno é não pode dirigir. Inclusive eu até copiei e colei a sugestão de resposta do professor e o erro persiste.

insira seu código aqui
if( idade >= 18 && temCarteira == "S") {
    mostra("Pode dirigir");
} else { 
    mostra("Não pode dirigir");
}