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

Desafio 3

/*DESAFIO 3 
1 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 imc(peso,altura,imCor){
    peso = parseFloat(prompt("Ingresa tu peso: "));
    altura = parseFloat(prompt("Ingresa tu altura"));
    imCor = alert(`Tu Imc es: ${peso/(altura*altura)}`);
}
imc();

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

function factorial(entrada) {
    entrada= parseInt(prompt('Ingresa un numero para calcular su factorial'));
  if (entrada < 0) {
    return "El factorial no está definido para números negativos.";
  }
  let resultado = 1;
  //i es el contador, se usa ciclo for
  // inicializa contador en 2 hasta que sea menor o igual a la entrada i se incrementa
  for (let i = 2; i <= entrada; i++) {
    //resultado igual a resultado por i, es decir, multiplicacion recursiva
    resultado *= i;
  }
  //imprimimos resultado en pantalla
  alert(`El factorial de ${entrada} es ${resultado}`);
  return resultado;
  
}
factorial();


/*3 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 convertirMoneda(reales,dolares){
    reales = parseFloat(prompt('Cuanto dinero desea convertir (real brasilenio)?'));
    dolares = alert(`${reales} reales son iguales a ${reales/4.80} dolares`);


}
convertirMoneda();

/*4 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 areaYPerimetro(largo,ancho){
    largo = parseFloat(prompt('Medida de largo: '));
    ancho = parseFloat(prompt('Medida de ancho: '));
    resultadoPyA = alert(`El perimetro es ${(largo+ancho)*2} m y el area ${largo*ancho} m`);

}
areaYPerimetro();

/*5 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 circulo(radio){
    radio = parseInt(prompt("ingrese el radio del circulo:"));
    resultadoCirculo = alert (`El perimetro es: ${3.14*(radio*2)} y el area ${3.14*(radio*radio)} `);
}
circulo();



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

function tablaMultiplicar(n){
    n= parseInt(prompt("Dame un numero y te dare su tabla de multiplicar: "));
    let result = 0;
    for (let conta = 1; conta <11; conta ++){
        result = alert(`${n} por ${conta} es ${n*conta}`);
    }
    return;
}
tablaMultiplicar();
1 respuesta

Hola Ag, espero que estés bien

He revisado tu código y parece que estás en el camino correcto para resolver los desafíos. Sin embargo, hay algunos puntos que podrías ajustar para que las funciones cumplan con los requisitos de los desafíos. Aquí te dejo algunas sugerencias:

  1. Índice de Masa Corporal (IMC): Tu función imc está solicitando al usuario que ingrese el peso y la altura, pero los desafíos piden que estos valores se pasen como parámetros a la función. Puedes modificar la función para que acepte peso y altura como argumentos y calcule el IMC de esta manera:

    function imc(peso, altura) {
        let imcValue = peso / (altura * altura);
        alert(`Tu IMC es: ${imcValue}`);
        return imcValue;
    }
    // Ejemplo de llamada
    imc(70, 1.75);
    
  2. Factorial: Tu función factorial también solicita el número al usuario, pero debería recibirlo como parámetro. Aquí tienes cómo podrías hacerlo:

    function factorial(entrada) {
        if (entrada < 0) {
            return "El factorial no está definido para números negativos.";
        }
        let resultado = 1;
        for (let i = 2; i <= entrada; i++) {
            resultado *= i;
        }
        alert(`El factorial de ${entrada} es ${resultado}`);
        return resultado;
    }
    // Ejemplo de llamada
    factorial(5);
    
  3. Conversión de Moneda: Deberías pasar el valor en reales como parámetro en lugar de pedirlo al usuario dentro de la función:

    function convertirMoneda(reales) {
        let dolares = reales / 4.80;
        alert(`${reales} reales son iguales a ${dolares} dólares`);
        return dolares;
    }
    // Ejemplo de llamada
    convertirMoneda(100);
    
  4. Área y Perímetro de una Sala Rectangular: Similar a los anteriores, pasa el largo y el ancho como parámetros:

    function areaYPerimetro(largo, ancho) {
        let perimetro = (largo + ancho) * 2;
        let area = largo * ancho;
        alert(`El perímetro es ${perimetro} m y el área es ${area} m²`);
        return { perimetro, area };
    }
    // Ejemplo de llamada
    areaYPerimetro(5, 3);
    
  5. Área y Perímetro de una Sala Circular: Pasa el radio como parámetro:

    function circulo(radio) {
        let perimetro = 3.14 * (radio * 2);
        let area = 3.14 * (radio * radio);
        alert(`El perímetro es: ${perimetro} y el área es ${area}`);
        return { perimetro, area };
    }
    // Ejemplo de llamada
    circulo(4);
    
  6. Tabla de Multiplicar: Pasa el número como parámetro:

    function tablaMultiplicar(n) {
        for (let conta = 1; conta <= 10; conta++) {
            alert(`${n} por ${conta} es ${n * conta}`);
        }
    }
    // Ejemplo de llamada
    tablaMultiplicar(7);
    

Espero que estas sugerencias te sean útiles para ajustar tus funciones de acuerdo con los desafíos planteados. ¡Espero haber ayudado y buenos estudios!