lodo001
Messages postés1Date d'inscriptionmercredi 11 avril 2012StatutMembreDernière intervention11 avril 2012
-
11 avril 2012 à 16:33
cormandyr
Messages postés600Date d'inscriptionsamedi 20 mai 2006StatutMembreDernière intervention 8 juillet 2016
-
12 avril 2012 à 09:21
Bonjour, je dois réaliser un projet en JAVA.
CE projet consiste à créer une fenetre simulant un pret auto afin de calculer les mensualités et d'afficher les résultats suivant différentes conditions.
Je suis bloqué (je crois) au niveau de la recupération des données de la liste Choice c3.
J'ai isolé par // la partie qui me pose problème. Le reste semble être correcte je pense.
Si vous pouvez me sortir de là...
voici ce que j'ai fait:
public class Emprunt {
public static void main(String args[]) {
Fenetre f = new Fenetre() ;
f.pack() ;
f.show() ;
}
}
class Delegue {
protected Fenetre fen;
Delegue (Fenetre f) {
fen = f;
}
public void quitter(){
System.exit(0);
}
void afficheres(){ // debut de la methode calcul affichage du resultat
fen.txt.setText("");
String resultat="Erreur";
float mont = new Float(fen.montant.getText()).floatValue();
float rev = new Float(fen.revenu.getText()).floatValue();
float ncf = new Float(fen.c1.getSelectedItem()).floatValue();
float ndr = new Float(fen.c2.getSelectedItem()).floatValue();
boolean typ=new Boolean(fen.c3.getSelectedItem()).booleanValue();
String taux;
String autorise=" LE PRET EST A PRIORI AUTORISE";
float r;
float m = (float) 1/12;
if (ncf < 10){
r = (float) Math.pow(1.049,m)-1; //taux annuel de 4,9% rammene au taux mensuel
taux= "Le taux appliqué est de 4,9% annuel\n"; }
else {
r= (float) Math.pow(1.063,m)-1; // taux annuel de 6,3% rammene au taux mensuel
taux = "Le taux appliqué est de 6,3% annuel\n";
}
float annuit= (float) ((mont*r)*Math.pow(1-Math.pow(1+r,-ndr),-1));
String an = " Le montant de la mensualité est : "+annuit+" euros.\n";
//boolean condition1 = (typ=="Essence" && ndr>36);
//boolean condition11 = (typ="Essence" && ndr<=36);
String raison1= "Pour une voiture Essence, la duree de pret ne peut exceder 36mois.\n";
//boolean condition2 = (typ="Diesel" && ndr>48);
//boolean condition21 = (typ="Diesel" && ndr<=48);
String raison2= "Pour une voiture Diesel, la duree de pret ne peut exceder 48mois.\n";
//boolean condition3 = (typ="Hybride" && ndr>60);
//boolean condition31 = (typ="Hybride" && ndr<=60);
String raison3= "Pour une voiture Hybride, la duree de pret ne peut exceder 60 mois.\n";
//boolean condition4 = (typ="Electrique" && ndr>24);
//boolean condition41 = (typ="Electrique" && ndr<=24);
String raison4= "Pour une voiture Èlectrique, la duree de pret ne peut exceder 24mois.\n";
float test = rev*12/mont;
float revaccept = rev*12;
boolean condition5 = ( test<1);
boolean condition51 = (test>=1);
String raison5 = " Le montant emprunte "+mont+" ne peut exceder 12 fois le revenu mensuel, soit "+revaccept+"\n";
boolean condition6= (ncf>12 && revaccept<=100000);
boolean condition61= (ncf>12 && revaccept>100000);
String raison6 = " Si le nombre de chevaux fiscaux du vehicule est superieur a 12, le revenu annuel doit etre superieur a 100 000 euros." ;
boolean condition7= (9 < ncf && ncf<=12 && revaccept<=60000);
boolean condition71= (9< ncf&& ncf<=12 && revaccept>60000);
String raison7 = " Si le nombre de chevaux fiscaux du vehicule est compris entre 9 et 12, le revenu annuel doit etre superieur a 60 000 euros.";
boolean condition8= (6>=ncf && ncf<=9 && revaccept<=36000);
boolean condition81= (6>=ncf && ncf<=9 && revaccept>36000);
String raison8 = " Si le nombre de chevaux fiscaux du vehicule est compris entre 6 et 9, le revenu annuel doit etre superieur a 36 000 euros.";
public void windowClosing(WindowEvent e){
delegue.quitter() ;
}
public void windowClosed(WindowEvent e){}
public void windowOpened(WindowEvent e){}
public void windowIconified(WindowEvent e){}
public void windowDeiconified(WindowEvent e){}
public void windowActivated(WindowEvent e){}
public void windowDeactivated(WindowEvent e){}
}
cormandyr
Messages postés600Date d'inscriptionsamedi 20 mai 2006StatutMembreDernière intervention 8 juillet 201611 12 avril 2012 à 09:21
En fait, tu essaies de convertir une String qui contient le type de carburant en boolean...
Comme tu n'as aucun carburant qui s'appelle true ou yes, le boolean créé aura toujours la valeur false...
je n'ai pas regarder ce que tu voulais faire avec cette valeur (typ), mais comme ça, tu devrais plutot faire:
String type = c3.getSelectedItem().toString()
et lorsque tu veux tester sa valeur, évite les == et fais par exemple:
type.equals("Essence")
P.S. pour la lisibilité du code, pense à utiliser les balises de code (java ici) pour nous faciliter la tache ^^