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

Ada Discussion :

Problème de structure


Sujet :

Ada

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Décembre 2007
    Messages : 5
    Points : 4
    Points
    4
    Par défaut Problème de structure
    Bonsoir à tous et à toutes,

    J'ai un petit problème de structre dans mon programme, c'est un peu flou, mais je n'arrive pas à debuger. Je vous explique :

    Voici ma structure pas entière mais pour mon problème ça sufit...)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
       type T_Cell; --liste chainée
       type T_List is access T_Cell;
     
       type T_Stack is record --type Pile
          Top:T_List;
          Height:Natural:=0; --nombre d'element dans la pile;
       end record;
     
       type T_Node; --Arbre
       type T_Tree is Access T_Node;
     
       type T_Node is record
          Element:character;
          Left,Right:T_Tree;
       end record;
     
       type T_Couple is record 
          Car:Character;
          Node:T_Node;
       end record;
     
       type T_Cell is record
          Element:T_Couple;
          Next:T_List;
       end record;
    La procedure Push : --Push =>Empiler sur la pile
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    procedure Push(S:In out T_Stack; X: in T_Couple) is  --EMPILE
       begin
          S.Top:=New_Cell(X,S.Top);
          S.Height:=S.Height+1;
       end Push;
     
     
    Arbre : T_Tree;
    Pile1,Pile2:T_Stack;
    begin
    [...]
    Arbre:=Construct(.....); --J'ai réussi a construire un arbre dont Left et Right=>Null

    Je veux Pusher cet arbre sur la pile2Ma pile1 empile bien les caractères, je veux que ma pile2 empile des arbres, d'où le type T_Couple qui me permet de Pusher sur des elements de type differents..)
    Push(Pile2,Arbre); --ne fonctionne pas.

    je sais que c'est faux, Arbre est de type T_Tree, T_Tree is access T_Node, et on me dit toujours que Arbre est un T_Tree alors qu'il faudrait du
    T_Couple.(T_couple record avec Node:T_Node)
    Je me noie un peu dans ma structure la, j'aimerai avoir un peu
    d'éclaircicement...

    Je vous remercie beaucoup.

    Pierre-Hakim

    (Hey Romu!! si t'es tjrs sur ce forum, jte passe le bonjour ancien camarade! )

  2. #2
    Invité
    Invité(e)
    Par défaut
    Yep !


    Je ne suis pas une bête en modélisation .... mais ...

    Si un arbre c'est toujours un T_Tree, pourquoi t'empile des T_Node ?

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Décembre 2007
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    slut !

    ben le type T_Tree est un access T_Node, donc je dois pouvoir fair eun lien entre les deux, mais je pense que mon probleme vient de mon type T_Couple, c'est la clef de ttes mes primitives (empiler, depiler, top etc...), je viens de me reveiler la et je viens d'avoir une idée. , je vous tiens au courant lol.
    Mais si y'a des idées qui fusent l je suis pret à ls recevoir !!!

    Merci beaucoup !

    Bonne soir !
    je ne sais pas qui a modifié ma question pour avoir le truc super joli la, mais merci lol, ça veut au moins dire que y'a des gens qui lisent !! hihi !

    Bon bah en fait mon idée de ce matin à echoué... Dommage...

    Si quelqu'un à une idée...

    Bizoo lol

  4. #4
    Expert éminent
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Points : 6 486
    Points
    6 486
    Par défaut
    Hey Romu!! si t'es tjrs sur ce forum, jte passe le bonjour ancien camarade!
    Salut PH !

    J'ai pas tout compris à ton problème mais on va essayer de le résoudre.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Push(Pile2,Arbre); --ne fonctionne pas.
    Jusqu'ici c'est normal.

    Tu ne veux qu'empiler des arbres c'est ça ?

    Si c'est bien le cas, en fait, pas besoin de passer par des couples.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    type T_Cell is record
          Element:T_Tree;
          Next:T_List;
    end record;
    En théorie ça, ça devrait passer.

Discussions similaires

  1. Problème de structure "récursive"
    Par Pxnet dans le forum C
    Réponses: 5
    Dernier message: 21/01/2007, 17h20
  2. Problème de structures
    Par Zikas-r dans le forum C
    Réponses: 6
    Dernier message: 27/12/2006, 00h01
  3. Réponses: 16
    Dernier message: 21/08/2006, 14h12
  4. [Structures]Problème sur structures
    Par kendras dans le forum C++
    Réponses: 5
    Dernier message: 07/06/2006, 10h20
  5. [OCaml] Problème de structure/parser
    Par marv1 dans le forum Caml
    Réponses: 4
    Dernier message: 09/05/2005, 12h16

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