• Martes 14 de Mayo de 2024, 16:23

Autor Tema:  Esentero Y Espalabra  (Leído 1024 veces)

Querosvan

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Esentero Y Espalabra
« en: Lunes 20 de Marzo de 2006, 19:20 »
0
Como peudo hacer una funcion que me diga si una cadena introducida es un entero? y es una palabra de solo letras? esque tengo problemas... sobretodo al mezclar numeros y letras hacen lo que les da la gana...
gracias

patitofeo

  • Miembro MUY activo
  • ***
  • Mensajes: 145
    • Ver Perfil
Re: Esentero Y Espalabra
« Respuesta #1 en: Miércoles 22 de Marzo de 2006, 20:39 »
0
Deberías comparar cada uno de los caracteres y comprobar que estan en el rango que quieres

Busca en el google una tabla ascii y verás esto muy facil

Ya sabes que cada caracter se representa por un valor númerico ¿verdad?

Pues entonces simplemente comprueba para cada caracter que esta en el rango que quieres.
En ascii los caracteres que representan números estan seguidos (valores entre 48 y 57), las letra minusculas también (valores entre 97 y 122) y lo mismo para las mayusculas (valores entre 65 y 90).

Lo puede hacer asi.

Código: Text
  1.  
  2. For (i=0&#59; i< nCaracteresArray; i++)
  3.    {
  4.    if(array(i)< '0' || array(i)> '9')
  5.         {  
  6.                   //si estas aqui es que uno de los caracteres no es numerico
  7.                   //haces lo que tengas que hacer, como salir de la funcion y listo
  8.          }
  9.     }
  10.  
  11.  

Si sales del ciclo For sin que entre en el if es que todos los caracteres son digitos entre '0'  y '9'

Espero que lo hayas entendido

Si no por aqui estaremos. Dime donde me explique mal. Suerte