IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

Mots et Dictionnaire


Sujet :

C

  1. #1
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Novembre 2011
    Messages : 3
    Par défaut Mots et Dictionnaire
    TP : Mots et Dictionnaire

    L'énoncé:

    Dans un dictionnaire de langue, les mots sont les clés, les définitions sont les informations, le couple clé-définition constitue l’enregistrement. A chaque enregistrement du dictionnaire est associée la liste des mots de ce dictionnaire qui lui sont synonymes.
    Les enregistrements ont chacun une clé unique.
    L’ensemble des enregistrements est organisé de façon à faciliter leur manipulation.
    Si l'ajout et la suppression de mots sont autorisés, le dictionnaire est dit dynamique. Les opérations retrouver un enregistrement par sa clé, modifier, ajouter ou supprimer des enregistrements, vont s’appliquer sur l’ensemble et le faire évoluer au cours du temps. L’organisation de l’ensemble, conçu en fonction des opérations que l’on prévoit de lui faire subir pendant sa vie, est nommée structure de données.
    Un dictionnaire est donc, une structure de données, qui permet de représenter un ensemble fini de mots et de vérifier si un mot appartient ou non à l'ensemble, si le mot est trouvé, on accédera à sa définition et ses synonymes.

    Travail à réaliser :
    a) Définir une structure dictionnaire pour représenter un tel ensemble.
    b) écrire une fonction qui recherche un mot donné M dans le dictionnaire D. La taille du dictionnaire peut être grande, il est donc important d'écrire une fonction qui recherche rapidement le mot.
    c) écrire une fonction qui retourne la définition d’un mot donné.
    d) écrire une fonction qui retourne la liste des mots synonymes d'un mot donné.
    e) écrire deux fonctions qui permettent de modifier un dictionnaire : la première ajoute un mot donné (avec ses synonymes), la seconde supprime un mot.
    f) En utilisant les fonctions précédentes écrire une fonction main qui affiche un menu des opérations que l'utilisateur peut demander.





    Réalisation Pratique

    Un utilisateur verra sur son écran un menu l'invitant à choisir le traitement qu'il veut faire, par exemple :
    ----------------------------------------
    Lancer la session :
    ----------------------------------------
    1. Rechercher un mot
    ----------------------------------------
    2. Ajouter un mot
    ----------------------------------------
    3. Supprimer un mot
    ----------------------------------------
    4. Quitter
    ----------------------------------------
    [1234] : _
    ----------------------------------------

    Après chaque opération, le menu est réaffiché afin de changer de traitement ou quitter l'application.

  2. #2
    Membre émérite
    Avatar de bpy1401
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2003
    Messages
    511
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2003
    Messages : 511
    Par défaut
    Bonjour joker1889

    Si tu pense que l'on va faire ton travail à ta place, tu va être déçu.
    fait le , et si tu as des problèmes, exprime les et on pourras t'aider
    Page sur Developpez : http://pbriand.developpez.com

  3. #3
    Expert confirmé
    Avatar de diogene
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Juin 2005
    Messages
    5 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 761
    Par défaut
    @joker1889

    Ta question ne comporte aucune question donc on ne peut te répondre.

    Si tu veux de l'aide, montre ce que tu as déjà réalisé et précise les points sur lesquels tu as des difficultés et souhaite des éclaircissements

  4. #4
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Novembre 2011
    Messages : 3
    Par défaut
    Le problème est que Je suis obligé de le faire juste avec les listes chainés et les enregistrements, j'ai commencé, et ça avance, mais..j'ai un problème avec le Tri des mots après l'ajout, et l'allocation dynamique, parce que je travail juste avec les liste,je trouve aucune idées!

    Des idées ?


    Merci.

  5. #5
    Expert confirmé
    Avatar de diogene
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Juin 2005
    Messages
    5 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 761
    Par défaut
    mais..j'ai un problème avec le Tri des mots après l'ajout, et l'allocation dynamique, parce que je travail juste avec les liste....
    Quel problème ? Qu'est-ce que tu ne sais pas faire ? Sois plus précis.

    Un algo de tri repose sur des bases simples :
    1- Déterminer le début et la fin de l'ensemble des enregistrements à trier
    2- Se déplacer dans l'ensemble des enregistrements à trier (trouver le successeur d'un enregistrement)
    3- Echanger la position de deux enregistrements de l'ensemble. Ceci peut être fait, pour une liste de deux façons :
    3.1- on échange la position des deux maillons dans la liste
    3.2- on échange uniquement les données des deux maillons de la liste
    Une fois qu'on sait faire ça, il suffit de transcrire un algo de tri qelconque.

    Tu as aussi la possibilité de réaliser l'insertion dans le dictionnaire directement dans le bon ordre, à sa place définitive, au lieu d'insérer n'importe où puis de trier l'ensemble (ce qui peut demander du temps si l'ensemble à trier est important).

    Un des critères du sujet est
    il est donc important d'écrire une fonction qui recherche rapidement le mot.
    Tu peux peut-être t'orienter pour ta structure de données vers une table de hachage (même simple) avec une sous-liste pour chaque entrée dans la table.

    Maintenant, pour en dire plus, il faudrait connaitre la structure de données que tu as prévue.

  6. #6
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Novembre 2011
    Messages : 3
    Par défaut
    j'essayerais, et je vais vous informer si je rencontrais des obstqales.

    Merci.

Discussions similaires

  1. Erreur d'ajout de mot au dictionnaire
    Par croset dans le forum Débuter
    Réponses: 2
    Dernier message: 11/05/2008, 18h39
  2. Rechercher un mot dans un dictionnaire
    Par NeMo_O dans le forum C
    Réponses: 4
    Dernier message: 10/02/2007, 15h31
  3. Extraction de mots du dictionnaire de Word
    Par Pensardin dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 17/10/2006, 18h05
  4. dictionnaire vérification mot de passe
    Par philippe281281 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 20/07/2006, 10h46
  5. Sémantique - dictionnaire de mots
    Par amedeous dans le forum Langages de programmation
    Réponses: 2
    Dernier message: 01/11/2005, 13h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo