Bonjour,
j'aimerais avoir votre avis sur la conception d'une structure.
je souhaite, dans mon programme, lire un texte et enregistrer chaque nouveau mot dans une liste. Exemple : "le chien mange le chat" ==> "le chien mange chat"
Pour ce faire voici mes déclarations de structure de données :
Ici j'établis ma structure de données et je crée un pointeur en tête de liste.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Type Element= POINTER TO RECORD mot: ARRAY 50 OF CHAR; suivant: Element; END; ListeMots = RECORD début: Noeud; END;
Ensuite j'ai une procédure me permettant d'ajouter un mot dans ma liste :
Cette procedure et ce traitement fonctionnent. Cependant d'après vous s'agit-il d'une liste simplement chaînée ou doublement chaînée ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 PROCEDURE (VAR liste: ListeMots)AjouterMot*(m: ARRAY 50 OF CHAR), NEW; VAR courant, precedent: Element; BEGIN courant:=liste.début; WHILE (courant # NIL) & (m$ # courant.mot$) DO precedent:=courant; courant:=courant.suivant; END; IF courant = NIL THEN NEW(courant); courant.mot := m$; IF liste.début # NIL THEN precedent.suivant:=courant; ELSE liste.début:=courant; END; ELSE (*rien pour le moment*) END; END AjouterMot;
Merci.
Partager