004. Ejercicios de lógica de programación en Javascript

En este capítulo abordaremos los siguientes ejercicios, relacionados con números.

1. Número primo

Crearemos una función expresada, utilizando Arrow Function, que determine si un número es o no primo.

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

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

        if (numero === 0) return console.log("El número no puede ser cero");

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

        if (numero === 1)
          return console.log("El número 1 no es un número primo");

        let divisible = false;

        for (let i = 2; i < numero; i++) {
          if (numero % i === 0) {
            divisible = true;
            break;
          }
        }

        return divisible
          ? console.log(`El número ${numero} NO es primo`)
          : console.log(`El número ${numero} SÍ es primo`);
      };

      numeroPrimo(3);
      numeroPrimo(4);
      numeroPrimo(8);
      numeroPrimo(13);

2. Número par o impar

Vamos a crear una función expresada que determine si un número es par o impar. Utilizaremos funciones flecha o Arrow Function.

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

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

        if (numero === 0) return console.log("El número 0 no es un número par");

        return numero % 2 === 0
          ? console.log(`El número "${numero}" es un número par`)
          : console.log(`El número "${numero}" es un número impar`);
      };

      numeroPar(2);
      numeroPar(-100);
      numeroPar(0);

3. Celsius a Fahrenheit

En este último ejercicio crearemos una función que convierta grados Celsius a Fahrenheit y viceversa.

      const convertirGrados = (grados = undefined, unidad = undefined) => {
        if (grados === undefined)
          return console.log("No ingresaste grados a convertir");

        if (typeof grados !== "number")
          return console.log("No ingresaste un número");

        if (!unidad) return console.log("No ingresaste unidad para convertir");

        if (typeof unidad !== "string")
          return console.log("La unidad NO es una cadena de texto");

        if (unidad.length !== 1 || !/C|F/.test(unidad))
          return console.log("Valor de unidad no reconocido");

        if (unidad === "C") {
          return console.log(
            `${grados}ºC es igual a ${Math.round((grados * 9) / 5 + 32)}ºF`
          );
        }

        if (unidad === "F") {
          return console.log(
            `${grados}ºF es igual a ${Math.round((grados - 32) * (5 / 9))}ºF`
          );
        }
      };

      convertirGrados(100, "C");
      convertirGrados(0, "C");
      convertirGrados(32, "F");
      convertirGrados(100, "F");
Scroll al inicio