====== Geldrausgeben ====== Das Programm "Geldrausgeben2" kann einen eingegebenen Geldbetrag zuerst auf zwei Stellen nach dem Komma runden und dann die Schein- und Münzkombination ausgeben, sodass man möglichst wenig Scheine und Münzen benötigt. Außerdem kann das Programm ohne zwischenzeitliches schließen unendlich oft wiederholt werden. Beenden kann man es mit dem einfachen Befehl Stopp, worauf es sich auch nach doppeltem drücken der Enter-Taste selbst schließt. Desweiteren gibt das Programm auch einen Fehlercode aus, falls man weder einen Geldbetrag noch den Stopp-Befehl eingibt. Falls jemand das Programm gerne kopieren will, muss bei Java nur eine Console-Datei erstellt und der unten stehende Quellcode eingefügt werden. {{e2:ausgeben.png?800|}} import java.util.Scanner; public class Geldrausgeben { public static void main(String[] args) { int a = 0; //500€ Scheine int b = 0; //200€ Scheine int c = 0; //100€ Scheine int d = 0; //50€ Scheine int e = 0; //20€ Scheine int f = 0; //10€ Scheine int g = 0; //5€ Scheine int h = 0; //2€ Münze int i = 0; //1€ Münze int j = 0; //0,5€ Münze int k = 0; //0.2€ Münze int l = 0; //0.1€ Münze int m = 0; //0.05€ Münze int n = 0; //0.02€ Münze int o = 0; //0.01€ Münze int p = 0; Double eingabe = 0.0; //Der eingegebene Wert boolean weiter = true; //solange weiter wahr ist wiederholt sich das Programm Scanner sc = new Scanner(System.in); while (weiter) { System.out.println("Geben Sie einen Geldbetrag ein, oder Stopp, um die Schleife zu beenden"); if (sc.hasNext("Stopp")) { weiter = false; } // end of if else { if (sc.hasNextDouble()) { eingabe=sc.nextDouble(); eingabe = Math.round(eingabe*100)/100.0; System.out.println("Die Zahl lautet " + eingabe + " dabei wurde sie auf zwei Stellen nach dem Komma gerundet!"); if (eingabe >= 500) { while (eingabe >= 500) { a = a +1; eingabe = eingabe - 500; } // end of while } if (eingabe >= 200) { while (eingabe >=200) { b = b +1; eingabe = eingabe - 200; } // end of while } if (eingabe >= 100) { while (eingabe >=100) { c = c +1; eingabe = eingabe - 100; } // end of while } if (eingabe >= 50) { while (eingabe >=50) { d = d +1; eingabe = eingabe - 50; } // end of while } if (eingabe >= 20) { while (eingabe >=20) { e = e +1; eingabe = eingabe - 20; } // end of while } if (eingabe >= 10) { while (eingabe >=10) { f = f +1; eingabe = eingabe - 10; } // end of while } if (eingabe >= 5) { while (eingabe >=5) { g = g +1; eingabe = eingabe - 5; } // end of while } if (eingabe >= 2) { while (eingabe >=2) { h = h +1; eingabe = eingabe - 2; } // end of while } if (eingabe >= 1) { while (eingabe >=1) { i = i +1; eingabe = eingabe - 1; } // end of while } if (eingabe >= 0.5) { while (eingabe >=0.5) { j = j +1; eingabe = eingabe - 0.5; } // end of while } if (eingabe >= 0.2) { while (eingabe >=0.2) { k = k +1; eingabe = eingabe - 0.2; } // end of while } if (eingabe >= 0.1) { while (eingabe >=0.1) { l = l +1; eingabe = eingabe - 0.1; } // end of while } if (eingabe >= 0.05) { while (eingabe >=0.05) { m = m +1; eingabe = eingabe - 0.05; } // end of while } if (eingabe >= 0.02) { while (eingabe >=0.02) { n = n +1; eingabe = eingabe - 0.02; } // end of while } if (eingabe >= 0.01) { while (eingabe >=0.01) { o = o +1; eingabe = eingabe - 0.01; } // end of while } else { p = 0; } // end of if-else System.out.println("Im Folgenden sehen sie, welche Geldscheine/-münzen sie zum Bezahlen benötigen:"); if (a>0) { System.out.println (a + "mal 500 Euro"); } // end of if if (b>0) { System.out.println (b + "mal 200 Euro"); } // end of if if (c>0) { System.out.println (c + "mal 100 Euro"); } // end of if if (d>0) { System.out.println (d + "mal 50 Euro"); } // end of if if (e>0) { System.out.println (e + "mal 20 Euro"); } // end of if if (f>0) { System.out.println (f + "mal 10 Euro"); } // end of if if (g>0) { System.out.println (g + "mal 5 Euro"); } // end of if if (h>0) { System.out.println (h + "mal 2 Euro"); } // end of if if (i>0) { System.out.println (i + "mal 1 Euro"); } // end of if if (j>0) { System.out.println (j + "mal 50 Cent"); } // end of if if (k>0) { System.out.println (k + "mal 20 Cent"); } // end of if if (l>0) { System.out.println (l + "mal 10 Cent"); } // end of if if (m>0) { System.out.println (m + "mal 5 Cent"); } // end of if if (n>0) { System.out.println (n + "mal 2 Cent"); } // end of if if (o>0) { System.out.println (o + "mal 1 Cent"); } // end of if else { p=0; } // end of if-else } // end of if else { System.out.println("Das war weder eine Zahl, noch der Befehl Stopp!"); sc.next(); } // end of if-else } // end of if-else } // end of while sc.close(); System.out.println("Die Schleife wurde beendet!"); } // end of main } // end of class Geldrausgeben ---- == Erarbeitet von Yannick Pfaff ==