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

[Sugerencia] 09 Desafío: hora de practicar

Les comparto mi codigo, acepto sugerencias.

let peso = Number(prompt("Ingresa tu peso en kilos"));
let estatura = Number(prompt("Ingresa tu estatura en metros"));

function IMC(peso,estatura){
    return alert(`Tu indice de masa corporal es ${peso/(estatura*estatura)}`);
}

IMC(peso,estatura);
let numero = Number(prompt("Ingresa un número"));
let contador = 1;
let resultado = 1;

function factorial(numero){
    while(contador <= numero){
        resultado *= contador;
        contador ++;
        console.log(resultado);
    }
    return alert(`El factorial de ${numero} es igual a ${resultado}`);
}

factorial(numero);
let dolares = Number(prompt("Dólares"));
let reales = 0;

function convertirADolares(dolares){
    reales = 4.8 *dolares;
    return reales;
}

convertirADolares(dolares);
alert(`${dolares} dólares son ${reales} reales`);
let altura = Number(prompt("Altura"));
let anchura = Number(prompt("Ancho"));

function areaPerimetro(altura,anchura){
    let area = altura * anchura;
    let perimetro = (2*altura)+(2*anchura);
    return alert(`El área es igual a ${area} y el perimetro es igual ${perimetro}`);
}

areaPerimetro(altura,anchura);
let radio = Number(prompt("Radio"));

function areaPerimetro(radio){
    let area = 3.14*(radio*radio);
    let perimetro = 2*3.14*radio;
    return alert(`El área es igual a ${area.toFixed(2)} y el perimetro es igual ${perimetro.toFixed(2)}`);
}

areaPerimetro(radio);
let numero = Number(prompt("Ingresa un número"));
let contador = 1;

function tablaDeMultiplicar(numero){
    while(contador <= 10){
        let resultado = numero * contador;
        console.log(`${numero} X ${contador} = ${resultado}`);
        contador ++;
    }
    return;
}

tablaDeMultiplicar(numero);
1 respuesta

¡Hola Darien, espero que estés bien!

Gracias por compartir tu código. Lo has hecho muy bien al implementar diferentes funciones para resolver problemas comunes. Aquí te dejo algunas sugerencias para mejorar y optimizar tu código:

  1. Función IMC: El cálculo del índice de masa corporal está correcto, pero en lugar de usar alert dentro de la función, podrías retornar el valor y luego mostrarlo fuera de la función. Esto hace que tu función sea más flexible y reutilizable.

    function IMC(peso, estatura) {
        return peso / (estatura * estatura);
    }
    
    let imc = IMC(peso, estatura);
    alert(`Tu índice de masa corporal es ${imc}`);
    
  2. Factorial: El uso de variables globales como contador y resultado puede llevar a errores si la función se llama múltiples veces. Es mejor declararlas dentro de la función.

    function factorial(numero) {
        let resultado = 1;
        for (let i = 1; i <= numero; i++) {
            resultado *= i;
        }
        return resultado;
    }
    
    let fact = factorial(numero);
    alert(`El factorial de ${numero} es igual a ${fact}`);
    
  3. Conversión de dólares a reales: Similar a la función IMC, podrías retornar el resultado de la conversión y luego mostrarlo.

    function convertirADolares(dolares) {
        return 4.8 * dolares;
    }
    
    let reales = convertirADolares(dolares);
    alert(`${dolares} dólares son ${reales} reales`);
    
  4. Área y perímetro de un rectángulo: Todo está correcto, pero podrías considerar devolver un objeto con los resultados y luego mostrarlo.

    function areaPerimetro(altura, anchura) {
        let area = altura * anchura;
        let perimetro = 2 * (altura + anchura);
        return { area, perimetro };
    }
    
    let resultado = areaPerimetro(altura, anchura);
    alert(`El área es igual a ${resultado.area} y el perímetro es igual a ${resultado.perimetro}`);
    
  5. Área y perímetro de un círculo: Lo mismo que en el caso anterior, podrías devolver un objeto.

    function areaPerimetroCirculo(radio) {
        let area = Math.PI * (radio * radio);
        let perimetro = 2 * Math.PI * radio;
        return { area: area.toFixed(2), perimetro: perimetro.toFixed(2) };
    }
    
    let resultadoCirculo = areaPerimetroCirculo(radio);
    alert(`El área es igual a ${resultadoCirculo.area} y el perímetro es igual a ${resultadoCirculo.perimetro}`);
    
  6. Tabla de multiplicar: Para evitar problemas con variables globales, declara contador dentro de la función.

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

Espero que estas sugerencias te sean útiles y te ayuden a seguir mejorando tus habilidades de programación. ¡Bons estudios!