le c++ pour les nul
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
le c++ pour les nul

forum d'entraide pour les débutant en c++
 
AccueilAccueil  PortailPortail  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  ConnexionConnexion  
Le Deal du moment : -40%
Tefal Ingenio Emotion – Batterie de cuisine 10 ...
Voir le deal
59.99 €

 

 Exemple de liste chainee simple en c++

Aller en bas 
AuteurMessage
izidor




Nombre de messages : 1
Date d'inscription : 24/07/2007

Exemple  de liste chainee simple en c++ Empty
MessageSujet: Exemple de liste chainee simple en c++   Exemple  de liste chainee simple en c++ EmptyMar 24 Juil à 14:24

Salut a tous, voici un petit exemple sur les liste chainees :

Code:

#include <cstdlib>
#include <iostream>

// |----------------------------------|
// |****** Liste chainee simple*******|
// |Auteur: IZIDOR                    |
// |----------------------------------|
//la liste chainee est tres utile quand on c'est pas combien d'objet ont a besion a l'avance.

//Expemle: Disont que l'ont veut stokees des numeros de telephone ont peut declarer le tableau suivant:
//        char tel[10] soit 10 numeros de telephone : si il nous en faut 11 on n'a pas assez alloues de place en memoire
//ou au contraire
//        char tel[1000] soit 1000 numeros de telephone : si il nous en faut 800 on a alloues trop de place en memoire
 
 //Avec les listes chainees ont insere les objet 1 a 1 dans la liste selon les besions
 //comme ça on alloue juste la place qu'il nous faut en memoire.
 
 //-----------------------------------EXEMPLE DE CODE---------------------------------------------------
using namespace std;
//****************CLASS C_CELLULE***********************
class c_cellule
{
      public:
            //donnees
            char*telephone;//numero de telephone
            c_cellule*cel_suivante;//pointeur qui pointe sur la cellule suivante;
            //methode
            c_cellule(char*tel);//constructeur 
};
//definition du constructeur
c_cellule::c_cellule(char*tel)
{
    telephone=tel;
    cel_suivante=NULL;
}
//*****************FIN*************************************
//*********************************************************
//****************CLASS C_LISTE_SIMPLE*********************
class c_liste_simple
{
      public:
            //donnees
            c_cellule*debut_liste;//la premiere cellule de la liste
            c_cellule*courant_liste;//la derniere cellule ajouter dans la liste
            //methodes
            c_liste_simple();//constructeur
            void ajouter_cellule(c_cellule*c);//ajouter une cellule dans la liste
            void afficher_liste();//afficher la liste
};
//definition du constructeur
c_liste_simple::c_liste_simple()
{
    debut_liste=NULL;
    courant_liste=NULL;
}
//definition de ajouter_cellule
void c_liste_simple::ajouter_cellule(c_cellule*c)
{
    if(debut_liste==NULL)//si la liste est vide
    {
        debut_liste=c;//c devient la premiere cellule de la liste
        courant_liste=c;// et aussi la derniere ajouter
    }
    else//sinon
    {
        courant_liste->cel_suivante=c;//c devient la cellule suivante de la derniere cellule ajouter
        courant_liste=courant_liste->cel_suivante;//et c devient la derniere cellule ajouter
    }
}
//definition de afficher_liste
void c_liste_simple::afficher_liste()
{
    int x=1;
    c_cellule*temporaire=debut_liste;//cellule temporaire pour lire dans la liste
    while(temporaire)//temp qu'on est pas a la fin de la liste
    {
        cout<<"Numero "<<x<<" de tel: "<<temporaire->telephone<<"\n";//affiche le numero de telephone de la cellule x
        temporaire=temporaire->cel_suivante;//on avance dans la liste
        x++;
    }//on est a la fin de la liste
    delete temporaire;//on detruit la cellule temporaire
}
//**************************FIN*******************************
//************************************************************
//**************MAIN******************************************
int main(int argc, char *argv[])
{
    c_liste_simple*LS=new c_liste_simple();//construction d'une liste simple
    c_cellule*C=NULL;//declaration d'une cellule vide
   
    C=new c_cellule("06-14-22-10-XX");//construction d'une cellule
    LS->ajouter_cellule(C);//ajouter la cellule dans la liste
   
    C=new c_cellule("06-15-22-10-XX");
    LS->ajouter_cellule(C);

    C=new c_cellule("06-59-22-47-XX");
    LS->ajouter_cellule(C);
         
    LS->afficher_liste();//affiche la liste

    system("PAUSE");
    return EXIT_SUCCESS;
}
//********************FIN******************************************
a+
Revenir en haut Aller en bas
 
Exemple de liste chainee simple en c++
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» liste e-books

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
le c++ pour les nul :: programmations :: codes sources-
Sauter vers:  
Ne ratez plus aucun deal !
Abonnez-vous pour recevoir par notification une sélection des meilleurs deals chaque jour.
IgnorerAutoriser