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

09 Desafío: hora de practicar

//Crea una función que calcule el índice de masa corporal (IMC) de una persona a partir de su altura en metros y peso en kilogramos, que se recibirán como parámetros.

function indiceDeMasaCorporal(altura, peso){
const alturaNum = parseFloat(altura)
const pesoNum = parseFloat(peso)
let resultado= pesoNum / (alturaNum**2)

//porque el if solo acepta una expresión booleana dentro de un solo paréntesis.

if ((!isNaN(alturaNum) && (alturaNum>0)) && (!isNaN(pesoNum) && (pesoNum > 0))){
    return resultado

}else{
    console.log("Error")
    return null
}

}
// Pedir datos al usuario (esto funciona en navegador)
let altura = prompt("Ingresa tu altura en metros:");
let peso = prompt("Ingresa tu peso en kilogramos:");

// Llamamos a la función y guardamos el resultado
let imc = indiceDeMasaCorporal(altura, peso);

// Verificamos si el resultado es válido antes de mostrarlo
if (imc === null) {
console.log("Revisa tus datos, no son válidos.");
} else {
console.log("Tu IMC es " + imc.toFixed(2)); // Mostramos el IMC con 2 decimales
}

//Crea una función que calcule el valor del factorial de un número pasado como parámetro.

function valorFactorial(numero){

//si el número es 1, sabemos que el factorial es 1
if (numero==1){
    return 1 // Terminamos la recursión devolviendo 1
}else{
    // Paso recursivo:
    // Multiplicamos el número actual (valor de 'numero' en esta llamada)
    // por el factorial del número anterior (resultado de valorFactorial(numero - 1))
    // Esto hace que la función se llame a sí misma con numero-1 (es decir, el número anterior)
    return numero* valorFactorial(numero-1)

}

}

//Crea una función que convierta un valor en dólares, pasado como parámetro, y devuelva el valor equivalente en reales(moneda brasileña,si deseas puedes hacerlo con el valor del dólar en tu país). Para esto, considera la cotización del dólar igual a R$4,80.

function conversorDolar(dolar){
let pesos = dolar * 17.20
return pesos

}
console.log(conversorDolar(10))

//Crea una función que muestre en pantalla el área y el perímetro de una sala rectangular, utilizando la altura y la anchura que se proporcionarán como parámetros.

function areaPerimetro(altura,anchura){
let areaPantalla = anchura* altura
let perimetroPantalla= (anchura + altura) *2

console.log(`El Área de la pantalla es: ${areaPantalla}`)
console.log(`El Perímetro de la pantalla es: ${perimetroPantalla}`)

}

//Crea una función que muestre en pantalla el área y el perímetro de una sala circular, utilizando su radio que se proporcionará como parámetro. Considera Pi = 3,14.

function perimetroCircular(radio){
let perimetroCircular = (3.14162) * radio
let areaCircular = 3.1416 * (radio
radio)

console.log(`El Área de la pantalla es: ${areaCircular}`)
console.log(`El Perímetro de la pantalla es: ${perimetroCircular}`)

}

//Crea una función que muestre en pantalla la tabla de multiplicar de un número dado como parámetro.

function tablaDeMultiplicar(numero){
for (let num =1; num <= 10; num++ ){
let resultado = numero * num ;
console.log(${numero} x ${num} = ${resultado} )

}

}

1 respuesta

Hola Emmanuel, espero que estés bien

¡Espero que estés disfrutando del curso! Veo que has estado trabajando en varios ejercicios y funciones en JavaScript. Vamos a revisar cada una de ellas para asegurarnos de que todo esté en orden.

  1. Función de índice de masa corporal (IMC): Tu función indiceDeMasaCorporal parece estar bien estructurada. Estás verificando si los valores de altura y peso son números válidos y mayores que cero antes de calcular el IMC. Esto es importante para evitar errores en los cálculos. Además, usas parseFloat para convertir las entradas a números, lo cual es correcto.

  2. Función de valor factorial: La función valorFactorial utiliza recursión para calcular el factorial de un número. Está bien planteada, pero recuerda que el factorial de 0 también es 1, por lo que podrías agregar una condición para manejar ese caso:

    if (numero === 0 || numero === 1) {
        return 1;
    }
    
  3. Conversor de dólares a pesos: La función conversorDolar parece estar bien, pero mencionaste que querías convertir a reales brasileños. Asegúrate de usar la tasa de cambio correcta para la moneda que deseas. Si es para reales, usa la tasa de R$4,80 como mencionaste.

  4. Área y perímetro de una sala rectangular: La función areaPerimetro calcula correctamente el área y el perímetro. Solo asegúrate de que los parámetros altura y anchura sean números válidos.

  5. Área y perímetro de una sala circular: La función perimetroCircular también está correcta. Usas el valor de Pi = 3.1416, que es una aproximación común. Solo verifica que el parámetro radio sea un número válido.

  6. Tabla de multiplicar: La función tablaDeMultiplicar está bien. Genera la tabla de multiplicar de un número dado de 1 a 10, lo cual es útil para practicar.

Cada una de estas funciones tiene su propósito y parece que están bien implementadas. Recuerda siempre probar tus funciones con diferentes valores para asegurarte de que manejan correctamente todos los casos posibles.

Espero haber ayudado y buenos estudios!