Bonsoir tout le monde,
j'ai un problème avec mon code qui compile pas: j'arrive pas à accéder à la variable solde: "solde cannot be resolved to a variable"
Pourtant plus bas la variable solde n'est pas déclarée comme private, donc tout le package devrait y avoir accès (accès friendly) et même quand je crée une méthode accesseur dans la méthode calculerSolde() en faisant ça, ça ne passe pas
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 public double getSolde() { return solde; }
Voici le listing,Ps: il ne faut pas modifier le code source de la classe TestTirelire,
Merci d'avance de votre aide et explications
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141 import java.util.Scanner; /******************************************* * Completez le programme a partir d'ici. *******************************************/ class Tirelire { private double montant; //Methode getMontant qui retourne le montant dispo dans la tireLire public double getMontant() { return montant; } //debut de la methode afficher : display montant public void afficher() { if (montant<=0) { System.out.println("Vous etes sans le sou."); secouer(); } else { System.out.println("Vous avez :"+montant+" euros dans votre tirelire."); } } //methode secouer public void secouer() { System.out.println("Bing bing \n"); } public void remplir(double somme) { while (somme>0) { montant=montant+somme; } } public void vider() { montant=0.0; } //debut methode puiser public void puiser(double retrait) { while (retrait>0) { if (retrait>montant) { vider(); } } } //fin methode puiser public double calculerSolde(double budget) { if(budget>0) { solde=montant-budget; return solde; } else { return montant; } } } /******************************************* * Ne rien modifier apres cette ligne. *******************************************/ public class TestTirelire { public static void main(String[] args) { Tirelire piggy = new Tirelire(); piggy.vider(); piggy.secouer(); piggy.afficher(); piggy.puiser(20.0); piggy.secouer(); piggy.afficher(); piggy.remplir(550.0); piggy.secouer(); piggy.afficher(); piggy.puiser(10.0); piggy.puiser(5.0); piggy.afficher(); System.out.println(); // le budget de vos vacances de rêves. double budget; Scanner clavier = new Scanner(System.in); System.out.println("Donnez le budget de vos vacances : "); budget = clavier.nextDouble(); // ce qui resterait dans la tirelire après les // vacances double solde = piggy.calculerSolde(budget); if (solde >= 0) { System.out.println("Vous etes assez riche pour partir en vacances !"); System.out.print(" il vous restera " + solde + " euros"); System.out.print(" a la rentree \n"); piggy.puiser(budget); } else { System.out.print("Il vous manque " + (-solde) + " euros"); System.out.print(" pour partir en vacances !\n"); } clavier.close(); } }
Partager