Bonjour,

quelqu'un pourrait il m'aider a corrigé ce programme.

En gros c'est un simulateur de crédit. Le but ici est de calculer une mensualité en annuité constante, a partir des valeurs choisies: un text field pour le montant, un checkbox pour le taux d'interet selon le type d'emprunt, un text field pour le revenu mensuel et une liste pour le nombre d'années de remboursement.
Pour le moment je ne veux que calculer la mensualité en fonction de ces éléments dans un void calcule:
je dois récupérer les différents éléments entrés et les convertir puis appliquer la formule

je poste le code:



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
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
import java.awt.* ;
import java.awt.event.*;
 
class Fenetre extends Frame {
	static int nb = 3;
	static String checkboxemprunts[];
	static double checkboxvaleurs[];
 
	protected Panel p,p1,p2,p3,p4;
	protected TextArea texte;
	protected Button bouton1 ;
	protected CheckboxGroup cbg;
	protected Checkbox chb1, chb2, chb3;
	protected Choice c;
	protected TextField tf1, tf2;
	protected Delegue delegue;
	protected Adaptateur adapt;
 
public static void initemprunts() {
	checkboxemprunts = new String[nb];
	checkboxvaleurs = new double[nb];
	checkboxemprunts [0]= "immobilier"; checkboxvaleurs[0]= 0.05;
	checkboxemprunts[1]="achat de véhicule"; checkboxvaleurs[1]=0.06;
	checkboxemprunts[2]="consommation"; checkboxvaleurs[2]=0.08;
	}
 
	Fenetre() {
		p=new Panel();
		p.setLayout(new GridLayout(4,1));
 
		p1=new Panel();
		p1.setLayout(new FlowLayout());
		p1.add(new Label("Type d'emprunt"));
		cbg=new CheckboxGroup();
		chb1=new Checkbox("immobilier", cbg, true);
		p1.add(chb1);
		chb2=new Checkbox("achat de véhicule", cbg, false);
		p1.add(chb2);
		chb3=new Checkbox("consommation", cbg, false);
		p1.add(chb3);
		p.add(p1);
 
		p2=new Panel();
		p2.setLayout(new FlowLayout());	
			p2.add(new Label("Montant demandé"));
			tf1=new TextField(10);
			p2.add(tf1);
			p2.add(new Label("Nombres d'années de remboursement "));
			c=new Choice();
				c.addItem("3");
				c.addItem("4");
				c.addItem("5");
				c.addItem("6");
				c.addItem("7");
				c.addItem("8");	
				c.addItem("9");
				c.addItem("10");
				c.addItem("11");
				c.addItem("12");
				c.addItem("13");
				c.addItem("14");
				c.addItem("15");
				c.addItem("16");
				c.addItem("17");
				c.addItem("18");
				c.addItem("19");
				c.addItem("20");
				c.addItem("21");
				c.addItem("22");
				c.addItem("23");
				c.addItem("24");
				c.addItem("25");
				c.addItem("26");
				c.addItem("27");
				c.addItem("28");
				c.addItem("29");
				c.addItem("30");
			p2.add(c);
			p.add(p2);
 
		p3=new Panel();
		p3.setLayout(new FlowLayout());
		p3.add(new Label("Revenu mensuel"));
		tf2=new TextField(10);
		p3.add(tf2);
		p.add(p3);
 
		p4=new Panel();
		p4.setLayout(new FlowLayout());
		bouton1=new Button("Valider");
		p4.add(bouton1);
		p.add(p4);
 
		add("North", p);
 
		texte=new TextArea();
		add("South", texte);
 
 
delegue=new Delegue(this);
adapt=new Adaptateur(delegue);
 
this.addWindowListener(adapt);
bouton1.addActionListener(adapt);
 
		}
	}
 
class Delegue {
	protected Fenetre fen;
Delegue(Fenetre f){
	fen=f;
	}
public void quitter() {
	System.exit(0);
	}
 
 
 
 
 
void calcule() {
		double montant;
		string tf1=fen.tf1.getText();
		double m=new Double(tf1).doubleValue(); 		// montant demandé
		string c=fen.c.getSelectedItem();
		int nb=new Integer(c).intValue();  			//nombres d'années
		string tf2=fen.tf2.getText();
		double r=new Double(tf2).doubleValue();  		// revenu mensuel
 
		montant= m*(
			     checkboxvaleurs/
					(1-Math.pow(1+ checkboxvaleurs, -nb))
									)
									/12;
		w=new Double(montant).toString();
		}
 
 
 
 
public void afficheres() {
String res="Le type d'emprunt choisi est   :  " + fen.cbg.getSelectedCheckbox().getLabel();
res=res + "\nVous souhaitez emprunter   :   " + fen.tf1.getText();
res=res + "  Euros";
res=res + "\nSur une période de   :   " + fen.c.getSelectedItem();
res=res + "  ans";
res=res + "\nVotre revenu mensuel est de   :  " + fen.tf2.getText();
res=res + "  Euros";
fen.texte.setText(res);
fen.texte.setText(w);
}
 
}
class Adaptateur implements WindowListener, ActionListener {
protected Delegue delegue;
Adaptateur(Delegue d) {
delegue=d;
	}
 
public void windowOpened(WindowEvent e) {}
public void windowClosing(WindowEvent e) {
	delegue.quitter();
	}
 
public void windowClosed(WindowEvent e){}
public void windowIconified(WindowEvent e){}
public void windowDeiconified(WindowEvent e){}
public void windowActivated(WindowEvent e){}
public void windowDeactivated(WindowEvent e){}
 
public void actionPerformed(ActionEvent e) {
delegue.afficheres();
	}
}
 
public class Emprunt {
	public static void main (String args[]) {
		Fenetre f=new Fenetre();
		f.pack();
		f.show();
		}
	}
Merci