Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Comparar letras y número de un archivo

Estas en el tema de Comparar letras y número de un archivo en el foro de C/C++ en Foros del Web. Tengo que programar una función que me lea los datos de un archivo de texto donde tengo en cada linea 80 valores maximo (sin espacios) ...
  #1 (permalink)  
Antiguo 09/06/2010, 03:47
Avatar de HKdrott  
Fecha de Ingreso: junio-2004
Mensajes: 127
Antigüedad: 18 años
Puntos: 0
Comparar letras y número de un archivo

Tengo que programar una función que me lea los datos de un archivo de texto donde tengo en cada linea 80 valores maximo (sin espacios) , estos 80 valores son números y letras. Tengo que mostrar por pantalla los números y letras del texto.

#include <stdio.h>
#include<string.h>
#include <stdlib.h>

int separador (int ch)
{
return (ch==' ') || (ch=='\t') || (ch=='\n');
}

int main()
{
FILE *archivo;
long contador_caracteres;
long contador_palabras;
long contador_lineas;
int actual;
int prev;
char caracteres[80];

archivo = fopen("prueba.txt","r");

//inicializo una variable para llevar la cuenta de las líneas y los caracteres
contador_caracteres = 0;
contador_palabras = 0;
contador_lineas = 1;


if (archivo == NULL)
exit(1);

printf("\nEl contenido del archivo de prueba es \n\n");
while (!feof(archivo))
{
fgets(caracteres,80,archivo);

// Lectura de los datos de entrada
prev = ' ';
actual = getchar();

while (actual != EOF) {

contador_caracteres ++;

// ¿Fin de línea?

if (actual=='\n')
contador_lineas++;

// ¿Comienzo de una nueva palabra?

if (!separador(actual) && separador(prev))
contador_palabras++;

// Siguiente carácter

prev = actual;
actual = getchar();
}

}

printf (" \n Numero de lineas : " ,contador_lineas);
printf (" \n Numero de caracteres : " ,contador_catacteres);
printf (" \n Numero de numeros : \n " ,contador_numeros);

system("pause");

return 0;
fclose (archivo);

}


--------------------------------

Estoy atascado...es una aplicación sobre procesos pero necesito tener esto listo ya.

Un saludo y gracias de antemano.
  #2 (permalink)  
Antiguo 09/06/2010, 06:16
Avatar de HKdrott  
Fecha de Ingreso: junio-2004
Mensajes: 127
Antigüedad: 18 años
Puntos: 0
Respuesta: Comparar letras y número de un archivo

#include <stdio.h>
#include <stdlib.h>

int main()
{
FILE *archivo;

char caracteres[80];
char numeros[10]={'0','1','2','3','4','5','6','7','8','9'};
long contador_caracteres;
long contador_numeros;
long contador_lineas;

archivo = fopen("prueba.txt","r");

//inicializo una variable para llevar la cuenta de las líneas y los caracteres
contador_caracteres = 0;
contador_numeros = 0;
contador_lineas = 1;

if (archivo == NULL)
exit(1);

printf("\nEl contenido del archivo de prueba es \n\n");
while (feof(archivo) == 0)
{
fgets(caracteres,80,archivo);

if(strcmp(caracteres,numeros)==0)
{
contador_numeros ++;

}else

contador_caracteres ++;

printf("%s",caracteres);
}

printf (" \n Numero de lineas : " ,contador_lineas);
printf (" \n Numero de caracteres : " ,contador_caracteres);
printf (" \n Numero de numeros : \n " ,contador_numeros);

system("pause");
return 0;
}


-------------------------------


Por lo visto hay que hacerlo con el código ASCII, pero no se como implementarlo.

Necesito ayuda urgente por favor.

Un saludo y gracias de antemano.
  #3 (permalink)  
Antiguo 09/06/2010, 07:34
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 14 años, 5 meses
Puntos: 606
Respuesta: Comparar letras y número de un archivo

Aqui la explicacion:

http://www.psicofxp.com/forums/progr...-caracter.html

Aqui el resumen:

Código:
char caracter='A';
int ascii = (int)caracter;
__________________
Aviso: No se resuelven dudas por MP!

Etiquetas: comparar, letras
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:07.