M
Massta
Gast
Hallo Leute,
mir war heute langweilig, da hab ich ein Zinseszinsprogramm geschrieben. Da ich erst ein 3/4 Jahr Informatik in der Schule hab bin ich noch nicht so der Pro.. Ich habauch keine Ahnung wie man Eingabefelder erzeugt, also hab ich das anders gelöst. Nicht sehr sauber, aber für meine Zwecke in Ordnung.
Ich weiß, es ist nervig eine ganze Klasse durchzulesen, aber bitte.. Ich finde den Fehler doch nicht
EIGENTLICH ist ja alles richtig so, aber am Ende wenn die Werte ausgegeben werden sollen kommt immer irgendwas mit 400 raus, das ist so sinnlos
mir war heute langweilig, da hab ich ein Zinseszinsprogramm geschrieben. Da ich erst ein 3/4 Jahr Informatik in der Schule hab bin ich noch nicht so der Pro.. Ich habauch keine Ahnung wie man Eingabefelder erzeugt, also hab ich das anders gelöst. Nicht sehr sauber, aber für meine Zwecke in Ordnung.
Ich weiß, es ist nervig eine ganze Klasse durchzulesen, aber bitte.. Ich finde den Fehler doch nicht
Java:
import sum.ereignis.*;
import sum.werkzeuge.*;
public class Hauptprogramm extends Ereignisanwendung{
// Bezugsobjekte
Uhr uhr;
Buntstift stift;
Rechner rechner;
// Attribute
double startkapital;
double zinssatz;
double laufzeit;
double endkapital;
double mausX,mausY;
double sWert;
double zWert;
double lWert;
boolean gestartet = false;
boolean bearbeiteTaste = false;
boolean bearbeiteMausDruck = false;
boolean startkapitalAuswahl = true;
boolean zinssatzAuswahl = true;
boolean laufzeitAuswahl = true;
boolean laeuft = false;
// Konstruktor
public Hauptprogramm(){
super(1000,500);
uhr = new Uhr();
rechner = new Rechner();
stift = new Buntstift();
this.fuehreAus();
}
public void bearbeiteLeerlauf(){
if(laeuft){
menu();
}
if(!gestartet){
bearbeiteTaste = true;
bearbeiteMausDruck = true;
laeuft = true;
gestartet = true;
}
}
public void bearbeiteMausDruck(int x, int y){
mausX = x;
mausY = y;
sWert = mausX*100;
lWert = mausX/10;
zWert = mausX/100;
if(startkapitalAuswahl){
if(mausX>=300 && mausX<=600 && mausY>=50 && mausY<=100){
startkapital = sWert;
startkapitalAuswahl = false;
}
}
if(zinssatzAuswahl){
if(mausX>=300 && mausX<=600 && mausY>=200 && mausY<=250){
zinssatz = zWert;
zinssatzAuswahl = false;
}
}
if(laufzeitAuswahl){
if(mausX>=300 && mausX<=600 && mausY>=350 && mausY<=450){
laufzeit = lWert;
laufzeitAuswahl = false;
}
}
}
private void rechnung(){
endkapital = startkapital*rechner.potenz((1+zinssatz/100),laufzeit);
}
private void ausgabe(){
rechnung();
/*
stift.bewegeBis(0,0);
stift.radiere();
stift.setzeFuellMuster(1);
stift.zeichneRechteck(1000,500);
stift.normal();
stift.setzeFuellMuster(0);
stift.bewegeBis(200,400);
stift.schreibeText("Endkapital:");
stift.schreibeZahl(endkapital);*/
System.out.println("Startkapital:"+startkapital);
System.out.println("Laufzeit:"+laufzeit);
System.out.println("Zinssatz:"+zinssatz);
System.out.println("Endkapital:"+endkapital);
}
private void menu(){
if(!startkapitalAuswahl && !laufzeitAuswahl && !zinssatzAuswahl){
laeuft = false;
ausgabe();
}
stift.setzeFarbe(0);
stift.setzeFuellmuster(0);
stift.bewegeBis(350,50);
stift.setzeSchriftgroesse(20);
stift.schreibeText("Zinseszinsberechnung");
//Startkapital
stift.bewegeBis(50,100);
stift.setzeFarbe(0);
stift.setzeFuellmuster(0);
stift.schreibeText("Startkapital festlegen und ok drücken |ok|");
stift.bewegeBis(0,150);
stift.setzeFarbe(5);
stift.setzeFuellmuster(1);
stift.zeichneRechteck(1000,50);
//Zinssatz
stift.bewegeBis(50,250);
stift.setzeFarbe(0);
stift.setzeFuellmuster(0);
stift.schreibeText("Zinssatz festlegen und ok drücken |ok|");
stift.bewegeBis(0,300);
stift.setzeFarbe(6);
stift.setzeFuellmuster(1);
stift.zeichneRechteck(1000,50);
//Laufzeit
stift.bewegeBis(50,400);
stift.setzeFarbe(0);
stift.setzeFuellmuster(0);
stift.schreibeText("Laufzeit festlegen und ok drücken |ok|");
stift.bewegeBis(0,450);
stift.setzeFarbe(7);
stift.setzeFuellmuster(1);
stift.zeichneRechteck(1000,50);
if(mausX>=0 && mausX<=1000 && mausY>=150 && mausY<=200){
if(startkapitalAuswahl){
stift.setzeFarbe(1);
stift.bewegeBis(500,170);
stift.schreibeZahl(sWert);
stift.schreibeText("€");
}
}
if(mausX>=0 && mausX<=1000 && mausY>=300 && mausY<=350){
if(zinssatzAuswahl){
stift.setzeFarbe(1);
stift.bewegeBis(500,320);
stift.schreibeZahl(zWert);
stift.schreibeText("%");
}
}
if(mausX>=0 && mausX<=1000 && mausY>=450 && mausY<=500){
if(laufzeitAuswahl){
stift.setzeFarbe(1);
stift.bewegeBis(500,470);
stift.schreibeZahl(lWert);
stift.schreibeText("Jahre");
}
}
}
}
Zuletzt bearbeitet von einem Moderator: