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

Alguém pode me dizer onde esta errado?

<meta chasert = "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 ("Parabéns! esta apto a dirigir");

    } 

    else {
        ()
        mostra ("Não pode dirigir");
    }
6 respostas
if (idade >= 18 && temCarteira == "S");

Ñ tenho certeza, mas pode ser o  caractere de >=. Tenta assim >==.

Tentei, não deu certo tbm :( obrigada mesmo assim

solução!

Boa noite, Helen!

Existem dois erros no código que estão impedindo seu funcionamento. O primeiro é o ; (ponto e vírgula) que você adicionou após o parênteses de fechamento da instrução if, que gerou o seguinte erro: Unexpected "else"

Eliminando o ponto e vírgula o console emite outro erro: Expected "=>" but found "mostra"

Dentro do else, na primeira linha foi adicionado dois parênteses sem função nenhuma, basta removê-los que o código vai funcionar, abaixo segue o código corrigido.

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 ("Parabéns! esta apto a dirigir");

    }
    else{
        mostra ("Não pode dirigir");
    }

Seria bacana você adicionar a possibilidade da pessoa entrar com o valor "s" em minúsculo na variável temCarteira, pois a condição ali no if só tá aceitando o valor "S" em maiúsculo, fazer isso dá uma melhor experiência ao usuário. Fica aí como um desafio rs.

Bons estudos!

Eu fiz do jeito que vc instruiu, mas continuava não dando certo. depois me liguei que faltava o fechamento do script no final, aí deu certoooo!! obrigada, ajudou demais! Coloquei o "s" em minúsculo também.

Boa noite Helen, seu código esta correto, mas por falta de atenção você adicionou um ponto e virgula " ; " logo após fechar sua condição isso esta causando o erro, você não precisa por ponto e virgula ";" depois da condição por que la não é o fim de uma instrução na verdade é o começo de um bloco de instruções simbolizado por {. E retire aqueles dois parenteses apos o else aquilo não tambem ira causar erro.

precisando de ajuda pode entrar em contato pelo meu instagram: felipednew ficarei feliz em ajudar sempre.

Aqui esta seu erro...

 if (idade >= 18 && temCarteira == "S"); {
        mostra ("Parabéns! esta apto a dirigir");

aqui a forma correta...

 if (idade >= 18 && temCarteira == "S") {
        mostra ("Parabéns! esta apto a dirigir");

lembre-se de responder a pergunta com S maiusculo.

bons estudos, abraço.