Also meine for-Schleife verursacht einen Absturz und ich weiß genau warum, aber ich bin mir nicht sicher über eine Möglichkeit, dies neu zu schreiben, um es zu tun, was ich zu erreichen versuche.For Loop-Unterstützung
Ich versuche es zu bekommen, um Geld aus einem Zinseszins jeden Tag herauszunehmen und es für den Monat aufzuschlagen (der für immer 30 Tage gesetzt wird). Der Benutzer gibt die Anzahl der Tage ein, für die er zu berechnen versucht. Also, was verursacht den Absturz ist, wenn sie etwas anderes als etwas teilbar durch 30 setzen.
Ich habe Schwierigkeiten mit einer Möglichkeit, um dies neu schreiben und könnte irgendwelche Vorschläge verwenden. Ich möchte, dass es etwas tut, wenn sie 65 eingeben, es berechnet 2 Monate wert und dann wie ungenügende Tage für Monat 3 anzeigen. Jede Hilfe wird immer sehr geschätzt. Danke im Voraus.
for (int i = 0; i < numDays; i+=30){
double cash=0;
for (int n=1; n < 30; n++){
int currentDay;
currentDay= n+i;
cash=cash+dailyMoney[currentDay];
}
month++;
if(monthlyChecks == null)
monthlyChecks = "\nCheck on month "+month+": $"+df.format(cash)+"\n";
else
monthlyChecks = monthlyChecks+"\nCheck on month "+month+": $"+df.format(cash)+"\n";
}
numdays ist der Benutzer eingegebene Anzahl der Tage .... monthlyChecks ist ein String .... dailyMoney [] das Array, das die Menge für jeden Tag hält.
Vorschlag I: Verwenden Sie nicht doppelt für finanzielle Berechnungen http://epramono.blogspot.com/2005/01/double-vs-bigdecimal.html – matiasf
Bitte geben Sie den kompletten StackTrace. Und die Anweisungen, die das Array 'dailyMoney' deklarieren und initialisieren. –
Wie wäre es mit der Frage, ob der Benutzer Monate statt Tage eingeben soll? –