salut
voila jai une liste chainée avec un procedure d'intersion qui insert au debut ou au milieu de ma liste mes objets (des chocolat classé par poids)
j'ai crée une procedure de parcours qui fonctionne tres bien pour linsertion au debut mais pas pour linsertion au milieu
je ne comprend pas pourquoi cela plante
donc voici la procedure d'insertion au milieu:
et voici la procedure de parcours:
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 //Les chocolats seront classés par poid void liste_chocolat::insertion_milieu(chocolat *ptinsert) { //declaration de ptcoutant et ptprecedent : pointeur de chocolat chocolat *ptcourant; chocolat *ptprecedent; //ptcourant recoit premier ptcourant=premier; /*tant que ptcourant n'est pas nul et que le poid de ptinsert est surpperieur a celui de ptcourant faire ptprecedent recoit ptcourant ptcourant recoit ptinsert fin de boucle*/ while((ptcourant!=NULL)&&(ptinsert->get_poid()>ptcourant->get_poid())) { ptprecedent=ptcourant; ptcourant=ptinsert; } ptinsert->setsuivant(ptcourant); ptprecedent->setsuivant(ptinsert); }
voila merci par avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 void liste_chocolat::parcours() { // declaration d'un pointeur ptcourant de type chocolat// chocolat *ptparcours; ptparcours= premier; while (ptparcours!=NULL) { ptparcours->affichage(); ptparcours=ptparcours->getsuivant(); } }
Partager