/*
* !!! nicht selbststänig ausführbar, da keine MAIN vorhanden !!!
*
* ----------------------------------------------------------------------------
* Dateiname: kredit.java
* Versionsnummer: 1.0
* @version V 1.0
* ----------------------------------------------------------------------------
* Java Version: j2sdk1.4.2
* Entwicklungsumgebung: JCreator LE Vers. 3.5.0
* ----------------------------------------------------------------------------
* Autor:
* MatNr.:
* @author
* ----------------------------------------------------------------------------
* Beschreibung: Kreditprogramm
* ----------------------------------------------------------------------------
* Erstellungsdatum: 20.12.04
* ----------------------------------------------------------------------------
* Änderungsdatum: 10.01.05 -
* ----------------------------------------------------------------------------
*/
// kredit klasse
// import von awt für gui
import java.awt.*;
import java.awt.event.*;
import java.text.*;
import javax.swing.JOptionPane;
public class kredit extends Frame
{
public String Kreditrechner(String kredit, String zinssatz, String laufzeit)
{
double Kreditwert = new Double(kredit).doubleValue();
double Zinssatzwert = new Double(zinssatz).doubleValue();
int Laufzeitwert = new Integer(laufzeit).intValue();
double Tilgungsratenwert = Kreditwert / Laufzeitwert, Zinsbetrag, Zinsengesamt=0, Annuitaetgesamt = Kreditwert;
NumberFormat f = NumberFormat.getCurrencyInstance();
String Ergebnis="";
Ergebnis = " --- Tilgungsplan bei gleichbleibenden Tilgungsraten ---\n\n für einen Kredit von "+f.format(Kreditwert)+" über "+Laufzeitwert+" Jahre, bei " + Zinssatzwert +"% Zins\n\n"+" Jahr\tSchuld(Vorjahr)\tZinsbetrag\tTilgungsrate\tAnnuität\n";
for(int i=1;i<=Laufzeitwert+1;i++)
{
Zinsbetrag = Kreditwert*(Zinssatzwert/100);
if (i <= Laufzeitwert)
Ergebnis = Ergebnis + " " + i + "\t" + f.format(Kreditwert) + "\t" + f.format(Zinsbetrag) + "\t" + f.format(Tilgungsratenwert)+ "\t" + f.format(Zinsbetrag + Tilgungsratenwert)+"\n";
else Ergebnis = Ergebnis + " " + i + "\t" + f.format((int)Kreditwert);
Kreditwert = Kreditwert - Tilgungsratenwert;
Zinsengesamt = Zinsengesamt + Zinsbetrag;
}
Ergebnis = Ergebnis + "\n\n Zinsen gesamt \t= " + f.format(Zinsengesamt)+ "\n Annuität \t= "+f.format(Annuitaetgesamt + Zinsengesamt);
return (" "+ Ergebnis);
} //end of Kreditrechner
Color scharz = new Color (0,0,0);
Color blau = new Color (0,0,255);
Color weiß = new Color (255,255,255);
Color gelb = new Color (255,255,0);
Color rot = new Color (255,0,0);
Color grün = new Color (0,255,0);
//nötige Objekte erzeugen
Label lbKredit = new Label ("Kredithöhe(in €):");
TextField tfKredit = new TextField("",35);
Label lbZinssatz = new Label ("Zinssatz(in %):");
TextField tfZinssatz = new TextField("",35);
Label lbLaufzeit = new Label ("Kreditlaufzeit(in Jahren):");
TextField tfLaufzeit = new TextField("",35);
Button knopf = new Button("Berechnen");
TextArea text = new TextArea();
//ActionListener für Button-Drücken-Event definieren
ActionListener druekbutton = new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
text.setText("");
try{
text.append(Kreditrechner(tfKredit.getText(),tfZinssatz.getText(),tfLaufzeit.getText()));
}
catch(Exception ex)
{
JOptionPane.showMessageDialog(null,"Falsche Eingabe!");
}
}
};
public kredit(String titel)
{
super(titel);
setBackground(blau);
//addWindowsListener für Fenster-Schließen-Event definieren
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
//kein Layout festlegen
setLayout(null);
lbKredit.setForeground(rot);
lbZinssatz.setForeground(gelb);
lbLaufzeit.setForeground(grün);
knopf.addActionListener(druekbutton);
//Objekte positionieren
lbKredit.setBounds(20,40,93,30);
tfKredit.setBounds(117,45,150,20);
lbZinssatz.setBounds(20,70,93,30);
tfZinssatz.setBounds(117,76,150,20);
lbLaufzeit.setBounds(20,100,93,30);
tfLaufzeit.setBounds(117,107,150,20);
knopf.setBounds(270,106,70,20);
text.setBounds(22,140,500,300);
//Objekte auf Frame hinzufügen
this.add(lbKredit);
this.add(tfKredit);
this.add(knopf);
this.add(text);
this.add(lbZinssatz);
this.add(tfZinssatz);
this.add(lbLaufzeit);
this.add(tfLaufzeit);
} //end of Test
} //end of test