003. Ejercicios de lógica de programación

En este capítulo veremos los siguientes ejercicios de lógica de programación, aplicados en este caso a números.

1. Número aleatorio

Vamos a programar una función que obtenga un número aleatorio entre 501 y 600.

      const aleatorio = () => {
        console.log(Math.round(Math.random() * 100 + 500));
      };

      aleatorio();

2. Número capicúa

Vamos a programar una función que reciba un número y evalúe si es o no capicúa.

      const capicua = (numero = 0) => {
        if (!numero) return console.log("No ingresaste un número");

        if (typeof numero !== "number")
          return console.log(`El valor "${numero}" NO es un número`);

        // Convertimos el número a cadena de texto
        numero = numero.toString();

        let alReves = numero.split("").reverse().join("");

        return numero === alReves
          ? console.log(
              `Sí es capícua. Número original: ${numero} - Número al revés: ${alReves}`
            )
          : console.log(
              `No es capícua. Número original: ${numero} - Número al revés: ${alReves}`
            );
      };

      capicua(505);

3. Factorial de un número

En este último ejercicio programamos una función que calcule el factorial de un número. El factorial de un número entero positivo se define como el producto de todos los números enteros positivos desde 1 hasta n.

      const factorial = (numero = undefined) => {
        if (numero === undefined) return console.log("No ingresaste un número");

        if (typeof numero !== "number")
          return console.log("El valor introducido no es un número");

        if (numero === 0)
          return console.log("No se puede enviar cero como número");

        if (Math.sign(numero) === -1)
          return console.log("El número no puede ser negativo");

        let factorial = 1;

        for (i = numero; i > 1; i--) {
          factorial *= i;
        }

        return console.log(`El factorial de un número es ${factorial}`);
      };

      factorial(4);
      factorial(-3);
      factorial(0);
      factorial([]);
Scroll al inicio