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");
