| |||
Respuesta: Como independientemente enteros y flotantes Hola, si el número ingresado lo tratas como un simple string entonces puedes recorrer fácilmente cada dígito/caracter. Mira las funciones para strings: -Con un_string.charAt(0) obtienes el primer caracter, con un_string.charAt(1) obtienes el segundo caracter, etc. Con un for puedes recorrer todos los caracteres del string, la primera posición es 0 y la última posición es (un_string.length-1) -Con un_string.indexOf("2") obtienes la posición donde aparece el primer 2. -Hay funcions para tomar un substring, etc. Al recorrer cada dígito del string entonces puedes aplicar la función que te interese. Ejemplo, si tienes 10 contadores (uno para el 0... y el último para el 9), entonces al recorrer cada dígito incrementas el contador correspondente según el valor del dígito, al final tendrás en los contadores el total de dígitos que hay de cada número (0 a 9). Ejemplo, si creas dos contadores, para pares e impares, al recorrer el string evaluando cada dígito miras si es 0 o 2 o 4 o 6 o 8 o bien 1 o 3 o 5 o 7 o 9, según sea el caso incrementas en un contador o en otro, al final tendrás calculado el total de dígitos pares y el de impares. Para trabajar con el número como número usa parseInt(un_string,10) y así obtienes un número. Un saludo. |
| ||||
Respuesta: Como independientemente enteros y flotantes muchas gracias por el aporte. Lo tendre en cuenta :) aunque parseInt me soluciono todo acontinuacion el codigo que utilice. pues didvidi elnumero ingresado por el usuario mientras su parte entera mayor a cero. function determinar() { nu=formu.num.value; a=nu; while(a>0){//ciclo que me divide el numero mientras su parte entera sea mayor a 0 a1=a%10; if(a1%2==0) c++;//contador de pares pro+=a1; a=a/10; a=parseInt(a);//esto me salvo b++; } pro/=b; if(c==b)//si todos son pares pues entonces debe coincidir con el numero de digitos c="son todos pares"; else c="no son todos pares"; document.formu.resultado.value="El numero "+nu+" tiene "+b+" digitos y los digitos "+c+" el promedio de los digitos es "+pro+""; Última edición por ichizuke; 22/12/2008 a las 16:08 |