Les piles
lalati
Messages postés
110
Statut
Membre
-
lalati Messages postés 110 Statut Membre -
lalati Messages postés 110 Statut Membre -
bonsoir tout le monde;
svp j'ai un petit problème avec un exercice sur les piles
l'énnocé c'est : on a une pile d'entiers ordonnée par ordre décroissant ,écrire une procédure pour insérer une valeur val donnée à la place qu'il faut: a/ si elle n'existe pas
b/ si elle existe
pour le premier cas j'ai fait le cas ou la pile est vide
si pilevide (p) alors
début
sommet:=1;
p[sommet]:= val
fin;
mais pour le reste j'ai éssayé à chaque foi de dépiler la pile est de comparer l'élément dépiler avec la valeur val donnée mais ça marche pas
alors svp ,je cherche pas la solution de l'exercice ;mais si vous pourriez me donner un file ou plutot c'est quoi l'idée pour le résoudre
je vous remercie de bien vouloir me répondre
bonne soirée à tous
svp j'ai un petit problème avec un exercice sur les piles
l'énnocé c'est : on a une pile d'entiers ordonnée par ordre décroissant ,écrire une procédure pour insérer une valeur val donnée à la place qu'il faut: a/ si elle n'existe pas
b/ si elle existe
pour le premier cas j'ai fait le cas ou la pile est vide
si pilevide (p) alors
début
sommet:=1;
p[sommet]:= val
fin;
mais pour le reste j'ai éssayé à chaque foi de dépiler la pile est de comparer l'élément dépiler avec la valeur val donnée mais ça marche pas
alors svp ,je cherche pas la solution de l'exercice ;mais si vous pourriez me donner un file ou plutot c'est quoi l'idée pour le résoudre
je vous remercie de bien vouloir me répondre
bonne soirée à tous
A voir également:
- Les piles
- Faut il mettre des piles rechargeables dans un téléphone fixe - Forum telephonie fixe
- Peut on mettre des piles rechargeables plus puissantes ✓ - Forum telephonie fixe
- Piles manette wii ✓ - Forum Bureautique
- Téléphone sans fil se décharge très vite!!! ✓ - Forum telephonie fixe
- Alcatel f860 mettre les piles ✓ - Forum telephonie fixe
2 réponses
oui vous avez une bonne idée de départ . (Au fait : Triée par ordre décroissant signifie bien que la plus grande valeur est au sommet de la pile ? je suppose que oui)
Il faut avoir deux piles.
Celle de départ triée et une vide.
On a un nombre à rajouter qu'on appelle N.
on dépile (on le fait en empilant ce qu'on enlève sur l'autre pile)
Il faudrait en effet dépiler jusqu'à ce que le sommet soit plus petit que N.
Une fois que c'est le cas il ne faut plus dépiler la pile originale.
On rajoute N sur la pile.
Maintenant il faut dépiler la pile temporaire qu'on a faite pour ré-empiler par dessus N dans la pile de départ.
Et c'est tout bon.
Postez votre code si vous aveu un problème plus spécifique, et décrivez nous ce qui ne marche pas alors.
Il faut avoir deux piles.
Celle de départ triée et une vide.
On a un nombre à rajouter qu'on appelle N.
on dépile (on le fait en empilant ce qu'on enlève sur l'autre pile)
Il faudrait en effet dépiler jusqu'à ce que le sommet soit plus petit que N.
Une fois que c'est le cas il ne faut plus dépiler la pile originale.
On rajoute N sur la pile.
Maintenant il faut dépiler la pile temporaire qu'on a faite pour ré-empiler par dessus N dans la pile de départ.
Et c'est tout bon.
Postez votre code si vous aveu un problème plus spécifique, et décrivez nous ce qui ne marche pas alors.
bon voilà ma solution ,et je ne sais pas si elle est juste
bon le cas ou la pile et vide je l'ai déja posté , pour le reste (je suis toujours dans le cas ou la valeur val n'existe pas)
sommet2:=0
Tq non pilevide1 et p1[sommet]>= val
faire
dépiler (p1,val1);
sommet2:=sommet2+1;
p2[sommet2]:=val1
fait;
sommet1:=sommet1+1
p1[sommet1]:=val
Tq non pilevide2
faire
dépiler (p2,val2);
sommet1:=sommet1+1;
p1[sommet1]:=val2;
fait;
j'aimerai bien que vous me disiez si c'est juste ou pas
autre chose la pile tomporère qu'on a utilisé il suffit juste de la vidé(en dépilent) et c'est bon ?
Ça prend une minute pour remarquer quelqu’un, une heure pour l’apprécier une journée pour l’aimer mais toute une vie pour l’oublier
bon le cas ou la pile et vide je l'ai déja posté , pour le reste (je suis toujours dans le cas ou la valeur val n'existe pas)
sommet2:=0
Tq non pilevide1 et p1[sommet]>= val
faire
dépiler (p1,val1);
sommet2:=sommet2+1;
p2[sommet2]:=val1
fait;
sommet1:=sommet1+1
p1[sommet1]:=val
Tq non pilevide2
faire
dépiler (p2,val2);
sommet1:=sommet1+1;
p1[sommet1]:=val2;
fait;
j'aimerai bien que vous me disiez si c'est juste ou pas
autre chose la pile tomporère qu'on a utilisé il suffit juste de la vidé(en dépilent) et c'est bon ?
Ça prend une minute pour remarquer quelqu’un, une heure pour l’apprécier une journée pour l’aimer mais toute une vie pour l’oublier