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 :

List doublement Chainee


Sujet :

C++

  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2006
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 112
    Par défaut List doublement Chainee
    Bonsoir

    J'ai ecris ce code sauf que le resultat a l'affichage n'affiche q'un seul noeud celui de la fin uniquement

    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
     
     
    Node Class
    # include <iostream.h>
    # include <conio.h>
     
    class Node {
    private:
    Node* link;
    Node* prev;
    int info;
     
    public:
    Node(){link=NULL; prev=NULL; info=-1;}
    Node(Node* front, Node* back, int x){link=front; prev=back; info=x;}
    void SetLink(Node* l){link=l;}
    void SetPrev(Node* p){prev=p;}
    void SetInfo(int x){info=x;}
    int GetInfo(){return info;}
    Node* GetLink(){return link;}
    Node* GetPrev(){return prev;}
    };
     
    List Class
     
    class List {
    private:
    Node* start;
     
    public:
    void create(){start=NULL;}
     
     
    Append Method
     
    void append(int x){
    Node *node=new Node();
    node->SetInfo(x);
    node->SetLink(NULL);
    node->SetPrev(NULL);
     
    if(start==NULL) start=node;
     
    else {
    Node* temp=start;
    while(temp->GetLink()!=NULL) temp=temp->GetLink();
    temp->SetLink(start);
    temp->SetPrev(node);
    start=node; }
    						} 
     
     
    Display Method
     
    void display() {
    Node* temp=start;
    while (temp!=NULL) { cout<<"DATA"<<"--->"<<temp->GetInfo()<<"\n";
    temp=temp->GetLink();}
    					}
    };

    je voudrais avoir votre aide pour corriger le code SVP

  2. #2
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    3 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

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

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 549
    Par défaut
    1) Vire ce texte bizarre au milieu (c'est quoi ces trucs Node Class etc. ?)
    2) Indente ton code
    3) Vire la dépendance qui sert à rien (conio.h)
    4) Utilise iostream et non iostream.h
    5) Utilise un débogueur

  3. #3
    Membre confirmé
    Inscrit en
    Janvier 2006
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 112
    Par défaut
    Citation Envoyé par loufoque
    1) Vire ce texte bizarre au milieu (c'est quoi ces trucs Node Class etc. ?)
    2) Indente ton code
    3) Vire la dépendance qui sert à rien (conio.h)
    4) Utilise iostream et non iostream.h
    5) Utilise un débogueur
    Youpiii enfin une reponse

    Il ya des titres au milieu du code rien que pour expliquer ca na rien avoir avec le code. Oui je suis totalement d'accord avec toi ce code est vraiment bizzare. Comme mon professeur est un accro de Java, ainsi son code est en POO. D'ailleurs j'ai consulte tous les e-books, et le livres de programmation, ce code est unique

    Je t'explique un peu l'objet de ma demande. Dans mon code il ya deux classe. Une classe pour creer un noeud (NODE) avec deux pointeurs. La seconde c'est pour creer une classe d'une LISTE et dans laquelle on insert des noeuds.

    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
     
     
    # include <iostream.h>
    # include <conio.h>
     
    class Node {
    private:
    Node* link;
    Node* prev;
    int info;
     
    public:
    Node(){link=NULL; prev=NULL; info=-1;}
    Node(Node* front, Node* back, int x){link=front; prev=back; info=x;}
    void SetLink(Node* l){link=l;}
    void SetPrev(Node* p){prev=p;}
    void SetInfo(int x){info=x;}
    int GetInfo(){return info;}
    Node* GetLink(){return link;}
    Node* GetPrev(){return prev;}
    };
     
     
     
    class List {
    private:
    Node* start;
     
    public:
    void create(){start=NULL;}
     
     
    void append(int x){
    Node *node=new Node();
    node->SetInfo(x);
    node->SetLink(NULL);
    node->SetPrev(NULL);
     
    if(start==NULL) start=node;
     
    else {
    Node* temp=start;
    while(temp->GetLink()!=NULL) temp=temp->GetLink();
    temp->SetLink(start);
    temp->SetPrev(node);
    start=node; }
    						} 
     
    void display() {
    Node* temp=start;
    while (temp!=NULL) { cout<<"DATA"<<"--->"<<temp->GetInfo()<<"\n";
    temp=temp->GetLink();}
    					}
    };
    la bibliotheque conio sert uniquement a afficher le resultat apres l'execution.

  4. #4
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    3 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

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

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 549
    Par défaut
    Elle n'est pas utilisée dans le code que tu as fourni.

    Il semble que tu n'aies pas compris le principe des testcases, des exemples de code minimaux, qui compilent et qui démontrent le problème.

    Ton code n'est pas minimal (dépendance inutile) et ne compile pas (dépendances à des bibliothèques non standard), et même si je le modifie pour qu'il compile il ne démontre aucun problème.
    Bref il ne satisfait aucun des trois points.

    Ensuite, ton code est moche est illisible car non indenté, mais ça c'est autre chose. Enfin c'est quand même la raison principale pour laquelle je n'ai même pas cherché à savoir ce qui clochait. Je me demande comment toi-même tu peux essayer de travailler avec un truc pareil.

    Il ya des titres au milieu du code rien que pour expliquer ca na rien avoir avec le code.
    Ça s'appelle des commentaires. Pour mettre des commentaires, il faut mettre "//" au début d'une ligne ou les entourer avec "/*" et "*/".

    Oui je suis totalement d'accord avec toi ce code est vraiment bizzare. Comme mon professeur est un accro de Java, ainsi son code est en POO.
    Le code n'est ni particulièrement bizarre, ni proche de ce qu'on ferait en Java, ni en POO.

  5. #5
    Membre confirmé
    Inscrit en
    Janvier 2006
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 112
    Par défaut
    Merci Beaucoup pour le coup de main !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] liste doublement chainee
    Par newbie2012 dans le forum Langages
    Réponses: 2
    Dernier message: 18/02/2012, 17h43
  2. liste doublement chainee
    Par don1design dans le forum Débuter
    Réponses: 1
    Dernier message: 02/07/2010, 11h04
  3. Trier une liste doublement chainee pr tri bulle
    Par saturn1 dans le forum Contribuez
    Réponses: 0
    Dernier message: 13/12/2009, 23h14
  4. tri liste doublement chainee bubble
    Par saturn1 dans le forum Débuter
    Réponses: 2
    Dernier message: 08/11/2009, 16h20
  5. Réponses: 20
    Dernier message: 22/03/2006, 14h00

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