3
respostas

Usando parseInt no programa do IMC.

Boa noite,

Tentei utilizar o parseint no código para o programa do IMC, porém não funcionou. segue abaixo o código:

<meta charset="UTF-8">

<script>

    function pulaLinha() {

        document.write("<br>");
        document.write("<br>");

}

    function mostra(frase) {

        document.write(frase);
        pulaLinha();
}

    function calculaImc(peso, altura) {

        return peso / (altura * altura);

}

    var nome = prompt("Informe o seu nome");
    var alturaInformada = parseInt(prompt("Informe a sua altura"));
    var pesoInformado = parseInt(prompt("Informe o seu peso"));
    var imc = calculaImc(pesoInformado, alturaInformada);


    mostra(nome + " o seu IMC é " + imc);

</script>

Quando abro o programa no navegador, pede pra colocar o nome, peso e altura, porém aparece:

Felipe, o seu IMC é 85 (no caso, o peso que coloquei), conforme foto em anexo.

Fico no aguardo de uma resposta.

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

3 respostas

Bom dia Felipe, tranquilo? Analisando o seu código vi uma inconsistência, você esta tratando a altura como um tipo INTEIRO. O certo é a altura ser do tipo FLOAT, pois tipo inteiro não enxerga as casas decimais. Troque o parseInt por parseFloat, na altura e no peso pois a variável peso pode possuir casas decimais também.

<meta charset="UTF-8">

<script>

    function pulaLinha() {

        document.write("<br>");
        document.write("<br>");

}

    function mostra(frase) {

        document.write(frase);
        pulaLinha();
}

    function calculaImc(peso, altura) {

        return peso / (altura * altura);

}

    var nome = prompt("Informe o seu nome");
    var alturaInformada = parseFloat(prompt("Informe a sua altura"));
    var pesoInformado = parseFloat(prompt("Informe o seu peso"));
    var imc = calculaImc(pesoInformado, alturaInformada);


    mostra(nome + " o seu IMC é " + imc);

</script>

Execute esse código que ira obter sucesso! Precisando é só falar!

Boa noite Luís,

Funcionou perfeitamente agora.

Muito obrigado pela ajuda.

Bom dia, caso tenha dado certo perfeitamente poderia marcar o post como solucionado?