bonjour
Dans le code ci dessous, je ne comprends pas la fonction "viderPile". Celle-ci sert à vider la pile entièrement. Mais ce que fait la fonction, c'est mettre sommet à -1.
Il semble donc que le vidage de la pile se fasse automatiquement.
sommet est l'indice qui permet de repérer des éléments dans un tableau, si on le met à une valeur en dessous de zéro, cela signifie t il que toutes les valeurs sont supprimées?
Ce que je ne comprends pas non plus, c'est comment le compilateur comprends qu'en fixant sommet à -1, on vide toute la pile?
je vous remercie
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 public class Pile{ private int sommet; private int[] element; private void erreur (String mes){ System.out.println("***erreur"+mes); } public Pile(int max){ sommet=-1; element=new int[max]; } public boolean pileVide(){ return sommet=-1; } public void empiler(int v){ if(sommet<element.length-1){ sommet++; element[sommet]=v; } else { erreur("pile saturée"); } public void depiler(){ int v=0; if(!pileVide()){ v=element[sommet]; sommet--; } else{ erreur("Pile vide"); }return v; } public void viderPile(){ sommet=-1; } }
Partager