ayuda con programa diccionario

Laura
20 de Marzo del 2005
Buenas mira tengo 2 programas en c++ Tengo servidor y un cliente "modelo" no hacen nada mas que el cliente envia hola y el servidor dice adios. Ahora Tengo que hacer con esos programas un dicionario, es decir que el cliente me dice por ejemplo perro y el servidor tiene q contestarle can y si el fichero del servidor tiene 5 palabras y esa no esta pues mandar un mensaje y que diga al cliente esa palabra no esta en el dicionario. como lo hago por favor espero que alguna persona me ayude pq lo necesito. si kereis el codigo de los programas pedirmelo. por favor ayudarme

hiei
20 de Marzo del 2005
La idea es tener un archivo en texto plano (por ahora las bases de datos dejalas dormir...) con el formato
palara(t)traduccion(n)
Lo que va entre parentecis son los caracteres (TAB y CR-LF o CR segun OS)
Es facil, ahora, escanear el archivo linea a linea para determinar (con un strcmp) la palabra y su traduccion.
El fscanf para hacer esto seria:
char palabra[mxampalabra], traduccion[maxtraduccion];
fscanf (descriptor, "%st%s", palabra, trauccion);
...Al hacer esto tienes que comparar la cadena palabra con lo que mando el cliente y si son iguales (strcmp(s1, s2)==0) mandarle la cadena traduccion al cliente.
Esto tiene dos defectos grandes... Uno, que todo programador decente me va a criticar, es la lentitud de la traduccion (por cada palabra a traducir hay que hacerle rewind al fichero y escanearlo hasta el final, si no encuentra nada, decirselo, esto consume muhco tiempo) y la otra es que solo sirve para palabras simples (si es una frace no anda porque el scanf encuentra espacios en el medio... pero creo que esto es un mal menor)
Ahora, para hacerlo vien es recomendable usar algo como MySQL haciendole consultas a travez de su API en C o C++ o algo asi.... (aunque sea un shel de script)
Ahora... ¿Que compilador usas? ¿Sobre que OS?...
Si nesesitas mas alluda que esto te recomiendo pongas estos datos junto con algunas porciones del codigo (pro favor... algo comentadas...) en el foro...