Hola, estoy aprendiendo a programar en JavaScript y me estoy volviendo loco con un ejercicio, la verdad que es bastante simple, se trata de comprobar si un número es par o impar.
Primero compruebo que me están pasando un número entero y luego divido el número entre dos y con la misma función compruebo si el número es entero o no, si al dividir entre dos me da un número entero es par y si no es impar.
Al comprobar si el número es entero la función lo hace correctamente, pero luego una vez divido el número entre dos la función siempre me devuelve "true" independientemente de que el número me de 2.5 ó 3.5 o cualquier número decimal.
A ver si me podéis decir en qué estoy fallando, muchas gracias.
function pantalla() {
var numero = prompt ("Escribir un número entero:","0");
return numero;
}
function esEntero(valor)
{
k="0123456789 ";
for (j=0;j<valor.length;j++)
{
if (k.indexOf(valor.charAt(j)) == -1) {
return false;
}
}
return true;
}
var numero = pantalla();
while (!esEntero(numero)){
numero = pantalla();
}
numero = numero / 2;
if (esEntero(numero)) {
alert("Es un número par.");
}
else {
alert("Es un número impar.");
}