Ejercicio 15:

Programa una función para convertir números de base binaria a decimal y viceversa, por ejemplo miFuncion(100,2) devolverá 4 base 10

La forma en que lo hice:

Creo la función expresada convertirBinarioDecimal que recibe dos parámetros: numero y base, ambos los inicializo como undefined.

Primero valido que el parámetro sea un número y no llegue vacío.

Luego valido la base, que sea un número y que no llegue vacía.

Después veo si la base es 2, entonces debo hacer la conversión usando el método parseInt().

const convertirBinarioDecimal = (numero = undefined, base = undefined) => { if(numero === undefined) return console.warn("No ingresaste el número a convertir"); if(typeof numero !== "number") return console.error(`El valor ${numero} ingresado no es un número`); if(base === undefined) return console.warn("No ingresaste la base a convertir"); if(typeof base !== "number") return console.error(`El valor ${base} ingresada no es un número`); if(base===2){ return console.info(`${numero} en base = ${parseInt(numero,base)} en base 10`) } else if (base ===10) { return console.info(`${numero} base = ${(numero.toString(base))} base 2`); } else { return console.error("El tipo de base a convertir no es válido"); } }

Llamo a la función vacía para probar mis validaciones

convertirBinarioDecimal();

Llamo a la función con el primer parámetro como String para probar mis validaciones

convertirBinarioDecimal("2");

Llamo a la función con el primer parámetro con Number pero el segundo parámetro vacío para probar mis validaciones

convertirBinarioDecimal(100,);

Llamo a la función con el primer parámetro con Number y el segundo parámetro con String para probar mis validaciones

convertirBinarioDecimal(100,"2");

Llamo a la función con el número 100 como primer parámetro y el número 2 como segundo parámetro

convertirBinarioDecimal(100,2);

Llamo a la función y convierto el número binario 4 a base 10

convertirBinarioDecimal(4, 10);

Con F12 pueden inspeccionar 🧐 por consola el código en acción.