VariablenWert erneut verwenden?

Flutscho

Mitglied
Hallo

Ich schreibe gerade ein Programm, dass das Gehalt einer Person im Laufe der Jahre berechnen soll.
Die Person erhält pro Monat eine Gehaltserhöhung in der Höhe von einem Zwölftels von 10% ihres Gehalts, anders gesagt Gehalt * 0.0083333333 pro Monat.

Ich konnte jetzt ihr Jahresdurchschnittsgehalt berechnen, wenn sie diese Gehaltserhöhung nur 1 Jahr lang erhält.

Java:
do
		{
			System.out.print("\n" + "Geben sie die zu berechnenden Jahre ein (Minimum = 1 Jahr): ");
			years = Input.readInt();
		} while ( years <= 0);
		
		while ( years >= 1 )
		{
			salaryA += salaryA  / 100 * 10; // Variante A
			salaryEndA = salaryA + bonus; 
			
			while ( months >= 1 )
			{
				
				salaryB += salaryB * erhöhungMonth; 
				salaryMonths += salaryB; // summe gehalt im jahr
				salaryYear = salaryMonths / 12; // Jahresdurchschnitt
				months--; 
			}
			years--;
			System.out.print("\n" + salaryEndA); // Gehaltausgabe A
			System.out.print("\n" + salaryYear); // Gehaltausgabe B
		}

Die while schleife in Zeile 12 wird 12 mal durchlaufen, das passt, wie kann ich nach dem durchlaufen der Schleife months auf 12 zurücksetzen, damit ich das gehalt für mehrere Jahre berechnen kann?

Wäre nett wenn mir jemand helfen kann. Ich finde in meinen Büchern nichts dazu bzw. weiß ich nicht wonach ich genau suchen soll

MfG
 
Einfach nach der "Monats"-While-Schleife (nach Zeile 19) [c]months = 12;[/c] sollte doch funktionieren.
 
Zuletzt bearbeitet von einem Moderator:
Hallo gman

Ja das funktioniert prinzipiell. Allerdings passiert nicht das was passieren sollte.

Die Ausgabe sollte so aussehen: 1. Jahr => 1267.xxxx 2. Jahr => 1399.xxxx
Die Ausgabe sieht so aus: sum 1. Jahr => 1267.xxxx sum2. Jahr => 2666.xxxx
Das Programm addiert jetzt das Durchschnittsgehalt des 1. Jahres mit dem des 2.ten Jahres
Das soll es laut Anforderung auch, aber erst später 😀 Geplant hatte ich eigentlich den ersten Fall!

Danke schonmals, ich finde sicher einen Weg, um auf die geforderte Ausgabe zu kommen.

/edit: Ich hätte die Variable month einfach innerhalb der "Jahres" while Schleife deklarieren sollen, statt am Anfang des Progs, dann hätte es von anfang an geklappt 😳
 
Zuletzt bearbeitet:

Zurück
Oben