Hola, a ver si podéis iluminarme. Llevo trabajando desde las 6.30 de la mañana y ya no doy pie con bola.
He cogido hace un rato este problemilla: dar la parte entera de un número con decimales. Mi intento:
Pues no me admite la propiedad charAt, me sale este aviso: "Exception: TypeError: a.charAt is not a function in function digit".
Sin embargo el mismo código funciona cuando en vez de una función hago un simple script para números cogidos mediante prompt:
¿Dónde está el fallo? Gracias, un saludo.
He cogido hace un rato este problemilla: dar la parte entera de un número con decimales. Mi intento:
Código (javascript) [Seleccionar]
function digit(a){
var num = a;
var cifra='';
var cont=0;
while(num>1){
num=num/10;
cont++;
}
print(a + ' tiene ' + cont + ' enteros');
for(var i=0; i<cont; i++){
cifra = cifra + a.charAt(i);
}
print('La parte entera de ' + a + ' es ' + cifra);
}
digit(...)Pues no me admite la propiedad charAt, me sale este aviso: "Exception: TypeError: a.charAt is not a function in function digit".
Sin embargo el mismo código funciona cuando en vez de una función hago un simple script para números cogidos mediante prompt:
Código (javascript) [Seleccionar]
var a = prompt('Escribe un número con decimales');
var num = a;
var cifra='';
var cont=0;
while(num>1){
num=num/10;
cont++;
}
print(a + ' tiene ' + cont + ' enteros');
for(var i=0; i<cont; i++){
cifra = cifra + a.charAt(i);
}
print('La parte entera de ' + a + ' es ' + cifra);
¿Dónde está el fallo? Gracias, un saludo.



Esto de los bucles carece de la menor lógica para mí, si alguien me echa una mano se lo agradeceré infinito. Gracias, un saludo.