Ver Mensaje Individual
  #3 (permalink)  
Antiguo 03/09/2015, 10:46
samantika
 
Fecha de Ingreso: septiembre-2015
Mensajes: 5
Antigüedad: 8 años, 8 meses
Puntos: 0
Pregunta Respuesta: Contador de palabras repetidas en un fichero necesito sAyuda

Cita:
Iniciado por eferion Ver Mensaje
Para resolver tu problema tienes que tener en cuenta ciertas consideraciones:
  • una palabra empieza SIEMPRE por un carácter alfabético [a-z].
  • una palabra termina cuando te encuentras un carácter no alfabético (no tengas en cuenta de momento las palabras separadas con guiones).
Con esta información en mente ya puedes calcular el número de palabras que contiene el texto. Te comento esto porque, en tu código, si el texto de entrada es, por ejemplo, "dos,o.mas;palabras", la salida dirá que tienes únicamente una palabra y si pones "dos palabras" te dirá que hay tres (nota que hay dos espacios seguidos)

Además, hacer fgetc sobre un fichero que has cerrado previamente no es buena idea... si has volcado el contenido en "lectura" deberías plantearte usar esta variable para realizar las búsquedas.

En cuanto a buscar una palabra en concreto lo que puedes hacer es usar un puntero a char que apunte al inicio del texto. Entonces, mientras ese puntero no apunte a '\0', llamas a la strncmp (no confundir con strcmp) para que compare ese puntero con la palabra buscada.


Un saludo

Gracias por tu ayuda, ya he intentado hacer lo que me mencionas, pero no me da, ya que del texto que es el siguiente:

La fina arena de la playa. La rubicunda arena que cubre esa franja costera. Esos infinitos granos que se escurren por entre los dedos sin dejarse atrapar. La arena apelmazada que lame el agua, y la otra, suelta y ligera, sobre la que el viento dibuja cordilleras y valles cuya configuracion trastoca por completo una rafaga mas impetuosa. Efimeras orografias. Cambiantes mapas de arena. Doradas particulas que se agolpan en esa banda fronteriza y se codean dia a dia, hora a hora, segundo a segundo, con el rugiente mar. Pero ellas no le oponen resistencia.

Me tendria que mostrar las veces que se repite cada palabra, por ejemplo:

arena = 3
playa = 4

y asi con cada una de las palabras del texto, ¿como podria ir leyendo palabra por palabra e ir comprando cuantas veces se repite?

Saludos.