Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
2
respuestas

Error en mi codigo

tengo un error pero ya no me brinda nada y ya no me parece el cuadro emergente para ingresar los datos

<meta charset="UTF-8">

<h1>PROGRAMA CALCULAR IMC</h1>

<script>

    function saltarLinea() {
        document.write("<br>");    
        document.write("<br>");    
        document.write("<br>");        

    }  

    function imprimir(frase) {

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

    function calcularImc (peso,altura) {


    imc = peso / (altura * altura);


    return imc;


}

  nombre =prompt("informe su nombre");
  pesoInformado = prompt(nombre + "informe su peso"):
 alturaInformada =  prompt(nombre + "informe su altura");

 imcCalculado = calcularImc(pesoInformado,alturaInformada);

  imprimir(nombre + ", su imc calculado es:"  + imcCalculado);


if (imcCalculado < 18.5) {
    imprimir(" IMC abajo de lo recomendado");
}

if (imcCalculado >= 18.5) {

if (imcCalculado < 25) {

    imprimir(" IMC esta dentro del intervalo normal");
}

 }

//if (imcCalculado < 18.5) {
    //imprimir(" IMC abajo de lo recomendado")
//}

if (imcCalculado >= 30) {
    imprimir(" IMC considerado como obesidad")
} 


</script>

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

2 respuestas

Hola Andrea, fijate bien en tu variable "peso informado"... Fijate que tenes un pequeño error, finaliza con ":", en lugar de ";".

También recuerda que son variables, deberían ir precedidas por "var".

Hola Andrea Leticia, recuerda que los datos ingresados por el usuario a través de la función prompt() se almacenan como de tipo String, de esta manera para poder operarlos deberías realizar una conversión de tipo de datos, si quieres convertir a tipo entero entonces sería mediante un parseInt() o si es a un tipo de dato de coma flotante mediante parseFloat().

Adicionalmente ten en cuenta el comentario de Pablo en sus observaciones porque tiene razón respecto al uso de los : en vez de ;

Y como aporte adicional y buenas prácticas, trata de siempre indentar tu código, esto le dará mejor legibilidad y una estructura más amena a tu visión. Te sugiero la siguiente solución, saludos .

PROGRAMA CALCULAR IMC

    <script>

            function saltarLinea() {
                document.write("<br>");    
                document.write("<br>");    
                document.write("<br>");        

            }  

            function imprimir(frase) {

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

            function calcularImc (peso,altura) {
                imc = peso / (altura * altura);
                return imc;
            }

            var nombre =  prompt("informe su nombre");
            var pesoInformado = parseFloat(prompt( nombre + "informe su peso"));
            var alturaInformada =  parseFloat (prompt(nombre + "informe su altura"));
            var imcCalculado = calcularImc(pesoInformado,alturaInformada);
            imprimir(nombre + ", su imc calculado es:"  + imcCalculado);
            if (imcCalculado < 18.5) {
            imprimir(" IMC abajo de lo recomendado");
            }
            if (imcCalculado >= 18.5) {

                if (imcCalculado < 25) {
                    imprimir(" IMC esta dentro del intervalo normal");
                }
            }
            //if (imcCalculado < 18.5) {
            //imprimir(" IMC abajo de lo recomendado")
            //}

            if (imcCalculado >= 30) {
            imprimir(" IMC considerado como obesidad")
            } 

    </script>
</body>