Mot et lettre
firas scofield
Messages postés
14
Date d'inscription
Statut
Membre
Dernière intervention
-
[Dal] Messages postés 6205 Date d'inscription Statut Contributeur Dernière intervention -
[Dal] Messages postés 6205 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
j'ai un fichier texte qui contient un dictionnaire francais(plus de 320000 mots) , et je dois demander a l'ordinateur de generer des lettres majuscules aleatoirs (j'ai deja fait cette partie),ensuite je doit trouver tous les mots valides qu'on peut les former a partir de ces lettres , et le mots le/les plus long(s)
nb: un mot est valide si elle existe dans le dictionnaire(le fichier texte)
j'attend bien de votre aide.
j'ai etudié le langage C moins qu'un mois et on me demande de realiser ce projet
j'ai un fichier texte qui contient un dictionnaire francais(plus de 320000 mots) , et je dois demander a l'ordinateur de generer des lettres majuscules aleatoirs (j'ai deja fait cette partie),ensuite je doit trouver tous les mots valides qu'on peut les former a partir de ces lettres , et le mots le/les plus long(s)
nb: un mot est valide si elle existe dans le dictionnaire(le fichier texte)
j'attend bien de votre aide.
j'ai etudié le langage C moins qu'un mois et on me demande de realiser ce projet
A voir également:
- Mot et lettre
- Clavier iphone chiffre et lettre - Guide
- Trousseau mot de passe iphone - Guide
- Identifiant et mot de passe - Guide
- Mot de passe - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
2 réponses
Bonjour,
Avant de parler C, il faut parler algorithmique...
A partir d'un mot, il va falloir que tu fasses des boucles (récursivement ou pas) pour former toutes les combinaisons possibles.
Ensuite, il faudra que tu regardes quelles sont les combinaisons qui sont présentes dans le dictionnaire.
On attend ta proposition (soit en C, soit en algo) pour qu'on puisse t'aider vraiment.
Cdlt,
Avant de parler C, il faut parler algorithmique...
A partir d'un mot, il va falloir que tu fasses des boucles (récursivement ou pas) pour former toutes les combinaisons possibles.
Ensuite, il faudra que tu regardes quelles sont les combinaisons qui sont présentes dans le dictionnaire.
On attend ta proposition (soit en C, soit en algo) pour qu'on puisse t'aider vraiment.
Cdlt,
Est ce que tu peux récupérer chaque mot du dictionnaire dans une chaine ?!
pourtant, cela aurait pu tenir debout, même si c'est loin d'être optimisé, de tout mettre dans une seule chaîne, capable d'être traitée par
http://www.cplusplus.com/reference/cstring/strstr/
Bien sûr, avec ta solution, il peut optimiser la recherche, à condition de décider d'une structure de données pouvant être manipulée avec toutes ces chaînes, de se lancer dans un classement alphabétique des chaînes, de mettre en oeuvre un algorithme de recherche dychotomique, et autres joyeusetés... qui sont probablement "un peu" complexes à mettre en oeuvre pour notre ami Firas, qui n'a commencé le C que depuis 1 mois, ou ne pas optimiser du tout, et alors, je ne vois pas le gain par rapport à tout mettre dans une seule chaîne et utiliser une fonction standard du C toute faite pour rechercher ce qui doit l'être.
à condition, bien sûr qu'il ait suffisamment de mémoire pour stocker la chaîne, ce qui devrait être le cas s'il a un ordinateur pas trop ancien, vu que les 320000 mots sont en langue française, et qu'il font donc au plus 26 lettres, et donc moins de 10 Mo (ou x4 en Unicode sur 4 bytes).
:-D
strstr().
http://www.cplusplus.com/reference/cstring/strstr/
Bien sûr, avec ta solution, il peut optimiser la recherche, à condition de décider d'une structure de données pouvant être manipulée avec toutes ces chaînes, de se lancer dans un classement alphabétique des chaînes, de mettre en oeuvre un algorithme de recherche dychotomique, et autres joyeusetés... qui sont probablement "un peu" complexes à mettre en oeuvre pour notre ami Firas, qui n'a commencé le C que depuis 1 mois, ou ne pas optimiser du tout, et alors, je ne vois pas le gain par rapport à tout mettre dans une seule chaîne et utiliser une fonction standard du C toute faite pour rechercher ce qui doit l'être.
à condition, bien sûr qu'il ait suffisamment de mémoire pour stocker la chaîne, ce qui devrait être le cas s'il a un ordinateur pas trop ancien, vu que les 320000 mots sont en langue française, et qu'il font donc au plus 26 lettres, et donc moins de 10 Mo (ou x4 en Unicode sur 4 bytes).
:-D