1
resposta

erro no document.write

O programa roda, mas quando chega no "IF", ele não executa, e dá erro. Detalhe: o script é a aula, copiei exatamente como o professor fez no vídeo. Procurei na internet e descobri que o "document.write" pode dar erro e não deve ser usado. O quê usar para substituir?

<meta charset="UTF-8">
<script>
    function pulaLinha() {
        document.write("<br><br>");     
    } 
    function mostra(frase) {
        document.write(frase);
        pulaLinha();     
    }
    function calculaImc(peso, altura) {
        return peso / (altura*altura);    
    }
    var nome = prompt ("Olá! Informe seu nome:")
    var pesoInformado = prompt (nome + ", informe seu peso:")
    var alturaInformada = prompt (nome + ", informe sua altura (use ponto para separar dígito):")
    mostra("Você informou " + alturaInformada + " m de altura");
    mostra("Você informou " + pesoInformado + " kg de massa");
    var imc = calculaImc(pesoInformado, alturaInformada);
    mostra(nome + ", seu IMC é de " + imc + ".");
    If (imc < 18.5 ); {
        mostra ("Você está abaixo do recomendado");
    }
    If(imc > 35); {
        mostra ("Você está acima do recomendado");
    }
    If(imc >= 18.5 ); {
        if (imc <= 35) {
                mostra ("Você está dentro do peso recomendado");
        }
    }
</script>
1 resposta

Olá, Mayara

O problema ocorre pq o seu if esta escrito com o "i" maiusculo If e o correto é if todo em minusculo e entre o parenteses e a chave do if não tem o ;"ponto e vírgula" segue como ficaria a estrutura dos if.

    if (imc < 18.5 ){
        mostra ("Você está abaixo do recomendado");
    }
    if(imc > 35){
        mostra ("Você está acima do recomendado");
    }
    if(imc >= 18.5 ) {
        if (imc <= 35) {
                mostra ("Você está dentro do peso recomendado");
        }
    }

Coloquei eles em minusculo e removi o ; que existia entre o ) e a chave.

Estrutura basica de um if abaixo

if (condicao) {
  //  bloco de código que sera executado se a condição for verdadeira
}