Retroceder   Foros del Web > Temas generales de computación > Programación > C/C++

Respuesta
 
Herramientas Desplegado
Antiguo 05-may-2008, 15:01   #1 (permalink)
bebeme ha deshabilitado el karma
 
Fecha de Ingreso: mayo-2008
Mensajes: 31
ficheros

debo contar el numero de caracteres de un archivo
1. cuantos son numeros
2. cuantos son letras
3. cuantos son letras minusculas
4. cuantos son letra mayusculas

despues generar dos archivos:
uno que contenga los numeros y otro las letras
por ejemplo si un archivo contiene: AabDf3jp241i2
debe generar uno con las letras y otro con los numeros asi
letras:AabDfjpi
numeros: 32412

lo de contar la cantidad de numeros y letras, ya lo hice
no he hecho lo de generar los 2 archivos. alguien sabe como diferenciar un numero de una letra?? que funcion se puede utilizar, en caso de que exista!!!
gracias.......
bebeme está desconectado   Responder Citando
Antiguo 05-may-2008, 15:24   #2 (permalink)
Mephisto está en el buen camino
 
Avatar de Mephisto
 
Fecha de Ingreso: enero-2006
Ubicación: Mexico DF
Mensajes: 181
Re: ficheros

Una forma es la comparación directa, por ejemplo

Código:
if(x>='A' && x>= 'Z')
Siendo x un char, y lo mismo para los otros casos
__________________
Saludos...

Todos somos sabios, solo que en diferentes disciplinas...
Mephisto está desconectado   Responder Citando
Antiguo 05-may-2008, 15:39   #3 (permalink)
bebeme ha deshabilitado el karma
 
Fecha de Ingreso: mayo-2008
Mensajes: 31
Re: ficheros

oye, no entiendo la sentencia, aplicada al caso que tengo,,, por fa me la explicas,
perdona mi ignorancia
yo necesito determinar, si es un numero o una letra, y depediendo de eso se almacena en el archivo de numeros o letras respectivamente
bebeme está desconectado   Responder Citando
Antiguo 05-may-2008, 15:40   #4 (permalink)
LeOnHe4Rt ha deshabilitado el karma
 
Fecha de Ingreso: diciembre-2007
Mensajes: 7
Re: ficheros

Tb puedes jugar con la tabla ascii, a mi siempre me gusto utilizarla
LeOnHe4Rt está desconectado   Responder Citando
Antiguo 05-may-2008, 15:44   #5 (permalink)
a2a2 tiene algunos puntos positivos de karma
 
Fecha de Ingreso: marzo-2008
Mensajes: 303
Re: ficheros

Cita:
Iniciado por bebeme Ver Mensaje
... alguien sabe como diferenciar un numero de una letra?? que funcion se puede utilizar, en caso de que exista!!!
gracias.......
Están el el fichero ctype.h, en tu caso necesitas usar las funciones isdigit() y isalpha().
a2a2 está desconectado   Responder Citando
Antiguo 05-may-2008, 15:58   #6 (permalink)
Mephisto está en el buen camino
 
Avatar de Mephisto
 
Fecha de Ingreso: enero-2006
Ubicación: Mexico DF
Mensajes: 181
Re: ficheros

En una variable char almacenas lo que vas leyendo de tu archivo y despues comparas

Código:
while([al leer el archivo no sea EOF]){//Lees caracter por caracter

    if((x>='A' && x>= 'Z')||(x>='a' && x>= 'z'))//El caracter leido es una letra
   {
     //Escribes x en el archivo de letras

   }
   if(x>='0' && x>= '9')//El caracter leido es un numero
   {
     //Escribe x en el archivo de numeros
   }
}
Tambien como menciona LeOnHe4Rt puedes hacerlo con el valor ascii

48 - 57 (ascii) -> del 0 al 9
65 - 90 (ascii) -> de A a Z
97 - 122 (ascii) -> de a a z


Tambien como dice a2a2, estan las funciones isdigit() y isalpha(). Al final tienes que leer cada uno de los caracteres de tu archivo y establecer cual es...
__________________
Saludos...

Todos somos sabios, solo que en diferentes disciplinas...
Mephisto está desconectado   Responder Citando
Antiguo 05-may-2008, 16:14   #7 (permalink)
a2a2 tiene algunos puntos positivos de karma
 
Fecha de Ingreso: marzo-2008
Mensajes: 303
Re: ficheros

Mephisto, ahora que estás a tiempo corrige lo siguiente:
x>='Z' por x<='Z'
x>='z' por x<='z'
x>='9' por x<='9'

Aunque sigo pensando que es mejor usar isdigit() y isalpha(), que son gratis
a2a2 está desconectado   Responder Citando
Antiguo 05-may-2008, 16:34   #8 (permalink)
Mephisto está en el buen camino
 
Avatar de Mephisto
 
Fecha de Ingreso: enero-2006
Ubicación: Mexico DF
Mensajes: 181
Re: ficheros

Tienes razon a2a2, puse mal la condicion... jejejejej Eso del copy-paste como que no me funciono muy bien...
__________________
Saludos...

Todos somos sabios, solo que en diferentes disciplinas...
Mephisto está desconectado   Responder Citando
Antiguo 05-may-2008, 16:36   #9 (permalink)
Mephisto está en el buen camino
 
Avatar de Mephisto
 
Fecha de Ingreso: enero-2006
Ubicación: Mexico DF
Mensajes: 181
Re: ficheros

Va de nuevo para enmendar mi error, jajajajajaj

Código:
while([al leer el archivo no sea EOF]){//Lees caracter por caracter

    if((x>='A' && x<= 'Z')||(x>='a' && x<= 'z'))//El caracter leido es una letra
   {
     //Escribes x en el archivo de letras

   }
   if(x>='0' && x<= '9')//El caracter leido es un numero
   {
     //Escribe x en el archivo de numeros
   }
}
Gracias a2a2... y estoy tambien de acuerdo en el uso de iddigit(), y isalpha(), ya el uso de cualquiera de las dos opciones depende del gusto del programador no crees???
__________________
Saludos...

Todos somos sabios, solo que en diferentes disciplinas...
Mephisto está desconectado   Responder Citando
Antiguo 05-may-2008, 16:50   #10 (permalink)
bebeme ha deshabilitado el karma
 
Fecha de Ingreso: mayo-2008
Mensajes: 31
Re: ficheros

gracias!!!!
pikos pa los dosss
jajja
bebeme está desconectado   Responder Citando
Antiguo 05-may-2008, 16:54   #11 (permalink)
bebeme ha deshabilitado el karma
 
Fecha de Ingreso: mayo-2008
Mensajes: 31
Re: ficheros

alguno de ustedes me puede ayudar con esto:
hola, lo que tengo que hacer es lo siguiente:

crear un archivo en c que realice:
1.ingresar datos nombre, apellido, codigo, sexo, dir, telefono, cedula, fecha de nacimiento
2.ordenar alfabeticamente por apellido
3.ordenar por edad
4.ingresar registros en la posicion requerida
5.eliminar un registro requerido
6. imprimir por pantalla un registro buscado por telefono
7.mostrar por pantalla el numero de registros en el archivo
8. permitir renombrar el archivo
9. ubicar el archivo en una posicion del disco deseado
10. crear 2 nuevos archivos con los registros "hombres" y "mujeres" separados

ya realice, algunos, pero no me acuerdo de los metodos de ordenamiento y no tengo ni idea como ubicar el archivo en una posicion del disco deseado, y crear los registros "hombres" y "mujeres" separados, en 2 archivos.

por favor, urgenteeeeeeeeee
quien me ayuda con un codigo, que tal vez tenga algo similar
los mas pronto posible
bebeme está desconectado   Responder Citando
Respuesta
No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 01:14.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93