Java :: Aufgabe #4 :: Lösung #10
15 Lösungen

#4
Zinseszinsberechnung und Ausgabe
Anfänger - Java
von Gustl
- 12.08.2012 um 14:59 Uhr
Schreiben Sie ein Programm zur Zinseszinsberechnung. Das Konsolenprogramm soll den anzulegenden Geldbetrag, den Jahreszins und die Laufzeit in Jahren abfragen. Danach soll für jedes Laufjahr der Geldbetrag mit Zinseszins ausgegeben werden.
Etwa so:
Etwa so:
Konsolenausgabe:
Geldbetrag in Euro: 150
Jahreszins (0.05 = 5%): 0.04
Laufzeit in Jahren: 3
Wert nach 1 Jahr: 156,00 Euro
Wert nach 2 Jahren: 162,24 Euro
Wert nach 3 Jahren: 168,73 Euro
#10

von guandi (230 Punkte)
- 03.08.2018 um 12:27 Uhr
Die Ausgabe entspricht jetzt nicht den Vorgaben aber ansonsten würde ich sagen, dass das Programm gelungen ist :)
Java-Code

import java.math.*; import java.util.Scanner; public class App { public static void main(String[] args) { // Schreiben Sie ein Programm zur Zinseszinsberechnung. Das Konsolenprogramm soll den anzulegenden Geldbetrag, // den Jahreszins und die Laufzeit in Jahren abfragen. // Danach soll für jedes Laufjahr der Geldbetrag mit Zinseszins ausgegeben werden. System.out.println("Willkommen beim Zinseszinsrechner :)"); double geldbetrag = 0; double jahreszinssatz = 0.0; int laufzeit = 0; geldbetrag = eingabeBetrag(); jahreszinssatz = eingabeJahreszinssatz(); laufzeit = eingabeLaufzeit(); System.out.println(); System.out.println("-----"); System.out.println("Alle Eingaben auf einen Blick:"); System.out.println("Der einbezahlte Geldbetrag: " + geldbetrag + "€"); System.out.println("Der Jahreszinssatz: " + jahreszinssatz*100 + "%"); System.out.println("Die Laufzeit: " + laufzeit + " Jahre."); System.out.println("---"); System.out.println("Abrechung:"); System.out.println(""); berechnung(geldbetrag, jahreszinssatz, laufzeit); System.exit(1); } static double eingabeBetrag() { Scanner einlesen = new Scanner(System.in); double eingabe = 0; try { System.out.print("Bitte geben Sie den anzulegenden Betrag ein:"); eingabe = einlesen.nextDouble(); }catch (Exception e) { System.out.println("Bitte nur Ganzzahlen eingeben!"); eingabe = eingabeBetrag(); } return eingabe; } static double eingabeJahreszinssatz() { Scanner einlesen = new Scanner(System.in); double eingabe = 0.0; try { System.out.print("Jahreszins (Bsp: 0.05 = 5%):"); eingabe = einlesen.nextDouble(); }catch (Exception e) { System.out.println("Hmmm"); } return eingabe; } static int eingabeLaufzeit() { Scanner einlesen = new Scanner(System.in); int eingabe = 0; try { System.out.print("Eingabe der Laufzeit:"); eingabe = einlesen.nextInt(); }catch (Exception e) { System.out.println("Bitte nur Ganzzahlen eingeben!"); eingabe = eingabeLaufzeit(); } return eingabe; } static void berechnung(double geldbetrag, double jahreszinssatz, int laufzeit) { double zinsen; for(int i=0; i<laufzeit; i++) { int j; j=i; j++; zinsen = geldbetrag * jahreszinssatz; System.out.println(gerundet(zinsen) + "€ Zinsen im " + j + ". Jahr."); geldbetrag = geldbetrag + zinsen; System.out.println("Neuer Geldbetrag nach dem " + j + " Jahr: " + gerundet(geldbetrag) + "€."); System.out.println("---"); } } static String gerundet(double x) { String zahl = ""; final java.text.NumberFormat nf = java.text.NumberFormat.getInstance(); nf.setMaximumFractionDigits(2); zahl = nf.format(new BigDecimal(x)); return zahl; } }
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1