Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Lo hice de esta forma, lo describí según como lo entendí

<meta charset="UTF-8">
<h1>EJERCICIO CON PROMPT - INTERACTUANDO CON EL USUARIO</h1>
<script>
    //Esta parte se guarda como elementos auxiliares, no se utilizan hasta que se declaran las funciones y sus parámetros
    function saltarLinea() {
        document.write("<br>");				//"saltarLinea" permitirá saltar 3 espacios aunque pueden ser más o menos
        document.write("<br>");
        document.write("<br>");
    }

    function imprimir(frase) { 

        document.write(frase);				//En lugar de escribirlo en inglés se lo rremplazó por "imprimir"
        document.write("<br>");				//Además de añadir un espacio
    }

    function calcularIMC(peso,altura) { 	//Necesario para calcular dos parámetros, aunque se pueden añadir más
        return peso / (altura * altura);	//"return" nos dice qué resultado nos va a devolver
    }
    //Hasta aquí es mejor dejar en orden y/o comentado con detalles para realizar mantenimiento o que otra persona pueda leer sim complicaciones el código



    var nombre = prompt("Hola, por favor escriba su nombre");
    var pesoInformado = prompt("Mucho gusto " + nombre + ", por favor informe su peso");
    var alturaInformado = prompt("Genial, ahora sólo escriba su altura");
    //Estos serían los insumos o parámetros que se necesitan para ejecutar la función "calcularIMC" y obtener el resultado deseado, gracias a la función PROMPT el usuario puede añadir los datos necesarios

    var imcCalculado = calcularIMC(pesoInformado,alturaInformado);
    //Dos de esos parámetros sirven para utilizarlo en un cálculo matemático
    
    imprimir(nombre + ", su IMC calculado es: " + Math.round(imcCalculado));
    //Con la función "imprimir" podemos transmitir el resultado de forma entendible el resultado de nuestro objetivo
    //Aproveché en utilizar "Math.round()" para redondear el número, lo aprendí en clases anteriores de cálculo de edades

</script>
1 respuesta

¡Hola Estudiante, espero que estés bien!

Espero que estés bien. He revisado tu código y parece que estás en el camino correcto al interactuar con el usuario para calcular el IMC. Sin embargo, hay un pequeño detalle que podría causar un problema en tu cálculo. Cuando obtienes los valores de pesoInformado y alturaInformado desde el prompt, estos se reciben como cadenas de texto (strings). Para realizar correctamente el cálculo del IMC, es necesario convertirlos a números.

Puedes hacer esto utilizando la función parseFloat(), que convierte una cadena de texto en un número decimal. Aquí tienes cómo podrías ajustar tu código:

var pesoInformado = parseFloat(prompt("Mucho gusto " + nombre + ", por favor informe su peso"));
var alturaInformado = parseFloat(prompt("Genial, ahora sólo escriba su altura"));

Con este cambio, te aseguras de que los valores sean tratados como números, lo cual es esencial para el cálculo matemático del IMC.

Espero que esta sugerencia te sea útil y que tu código funcione como esperas. ¡Bons estudios!