axelvdk
Messages postés41Date d'inscriptiondimanche 26 août 2012StatutMembreDernière intervention30 mai 2013
-
21 oct. 2011 à 15:37
axelvdk
Messages postés41Date d'inscriptiondimanche 26 août 2012StatutMembreDernière intervention30 mai 2013
-
24 oct. 2011 à 15:27
Bonjour tout le monde,
Je suis étudiant en info et je dois remettre un projet pour lequel je dois faire un dictionnaire T9 (ceux des gsm). Pour cela notre prof nous a donner une piste concernant la déclaration des types. Bref je dois utiliser un arbre n-aire avec des des listes dynamiques et des tableaux.
En gros un noeud contient une liste simplement chaînée de mot et le noeud suivant est référencé par un tableau de pointeur qui va de 1 à 9. Je ne comprend pas le type de syntaxe ni le "chemin" à taper pour introduire des donnée dans mon arbre ni pour passer à la case suivante d'une des listes.
Ca donne ça au niveau délaration :
unit pointeur;
interface
uses sysutils,montableau;
type
Telem = string;
Tliste = ^cell;
cell = record
info : TElem;
svt : Tliste;
end;
type
Tarbre = ^noeud;
Tableau = array[2..9] of Tarbre;
noeud = record
mot : Tliste;
fils : Tableau;
end;
Ce que je voudrais arriver à faire dans un premier temps, c'est simplement comprendre comment introduire une donner dans cette arborescence et l'afficher.
J'ai tenté de faire des procédures du genre :
procedure init(var A : Tarbre);
begin
A:=nil;
end;
procedure ajouternoeud(mot : Telem; var A : Tarbre);
var na : Tarbre;
i:integer;
begin
i:=1;
new(na);
na^.mot^.info:=mot;
A:=na;
A:=A^.fils[i];
inc(i);
end;
procedure affiche(A : Tarbre);
var cour: Tarbre;
i : integer;
begin
cour:=A;
i:=1;
write (cour^.mot^.info);
inc(i);
end;
mais ça ne marche pas quand j'utilise l'unit dans un programme test.
Un grand merci à celui qui prendra la peine de réfléchir à mon problème,
axelvdk
Messages postés41Date d'inscriptiondimanche 26 août 2012StatutMembreDernière intervention30 mai 20131 24 oct. 2011 à 15:27
Salut Cirec,
C'est exactement ça dont j'avais besoin. On avait pas vu les notations "tableau de pointeurs" et c'est difficile de savoir ce qu'on fait sans savoir comment le noter convenablement (vu que ça compile pas et qu'on a pas le feed back de l'exe...) .
Un grand merci en tout cas,