Problème compilation: accès à une variable
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:
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:
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();
}
} |