Prog c

Fermé
mahdi89 Messages postés 64 Date d'inscription mercredi 17 décembre 2008 Statut Membre Dernière intervention 6 septembre 2016 - 12 avril 2009 à 14:04
mahdi89 Messages postés 64 Date d'inscription mercredi 17 décembre 2008 Statut Membre Dernière intervention 6 septembre 2016 - 12 avril 2009 à 14:46
Bonjour,
j'ai un exercice en C et vous aidez mes amis
soit une pile qui contienent 5 elements de types int
5
4
3
2
1
je veux supprimer le le n 3 et le resultat le suivant
5
4
2
1
en utilisant seulement les fonctions empiler et depiler
comment je faire et merci en avence

6 réponses

romanlol Messages postés 219 Date d'inscription mercredi 7 janvier 2009 Statut Membre Dernière intervention 21 juin 2016 10
12 avril 2009 à 14:07
0
KéKeC'est !!
12 avril 2009 à 14:08
Bonjour,

Pouvez vous nous donner la structure de vos fonctions empiler et dépiler svp ?.

merci.
0
mahdi89 Messages postés 64 Date d'inscription mercredi 17 décembre 2008 Statut Membre Dernière intervention 6 septembre 2016 1
12 avril 2009 à 14:10
mon ami je cherche le solution comment supp le 3 et j'ai un problème avec ce cours les piles seulement et merci pour votre compréhension
0
KéKeC'est !!
12 avril 2009 à 14:17
Re,

Je n'ai jamais vu d'algo standards qui dépilent au milieu d'une pile à moins de faire un truc du genre :

depiler().
depiler().
depiler().
empiler(4).
empiler(5).

salutations.
0
mahdi89 Messages postés 64 Date d'inscription mercredi 17 décembre 2008 Statut Membre Dernière intervention 6 septembre 2016 1
12 avril 2009 à 14:26
oui mon ami mais le prof donne ca et dit q'il existe un solution l'ide que j'ai c cree un autres pile copier pile 1 vers 2 puis supp 1 et copier de nouveu 2 vers 1 sauf n 3 c l'idee que j'ai mais comment traduire en c
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 844
12 avril 2009 à 14:46
Salut,
Effectivement, il n'y a pas mille solutions.
Tu te crées une deuxième pile, tu dépiles de la première tout jusqu'au trois, et tu stockes ces valeurs en empilant dans la deuxième. Et après tu fais l'opération inverse. Ta première pile contiendra le résultat voulu.
En C, tu dois te créer les fonctions empiler, dépiler, ta pile etc.
Après le code pourrait donner :
//pile1 est déjà définie (5 4 3 2 1).
int val;
Pile pile2;
createPile(&pile2);
while(...) {
     empiler(...,val);
}

while(...) {
    empiler(...,val);

}

Voilà ce à quoi cela pourrait ressembler. A toi de poster ta solution à partir de cette exemple qu'on puisse te corriger ;-)
0
mahdi89 Messages postés 64 Date d'inscription mercredi 17 décembre 2008 Statut Membre Dernière intervention 6 septembre 2016 1
12 avril 2009 à 14:46
pas de solution les amis !!!!!!!!!!!!!!!!!!!!!!!!!
0