package Uebungen.Uebung4;

import java.util.Scanner;
public class Wechselgeld {
    public static void main(String... args){
        Scanner scanner = new Scanner(System.in);
        System.out.print("Bitte Preis engeben: ");
        float preis = Float.parseFloat(scanner.nextLine());
        System.out.print("Bitte Betrag engeben: ");
        float zahlung = Float.parseFloat(scanner.nextLine());
        if(wechselgeld(preis,zahlung)) System.out.println("Vielen Dank!");
        else System.out.println("Das reicht leider nicht.");
    }
    public static boolean wechselgeld(float sollWert, float istWert){
        float[] scheine = {100f, 50f, 20f, 10f, 50f};
        float[] muenzen = {2f, 1f, 0.50f, 0.20f, 0.10f, 0.05f, 0.02f, 0.01f};
        int[] anzScheine = new int[scheine.length];
        int[] anzMuenzen = new int[muenzen.length];
        if(istWert<sollWert) return false;
        else{
            float ruekGeld = istWert - sollWert;
            System.out.println("_______________ Scheine _____________");
            for(int i=0; i<scheine.length; i++){
                anzScheine[i] = (int) (ruekGeld / scheine[i]);
                ruekGeld -= scheine[i]*(float)anzScheine[i];
                if(anzScheine[i]>0) System.out.println(anzScheine[i] + " x " + scheine[i] + " EUR");
            }
            System.out.println("_______________ Muenzen _____________");
            for(int i=0; i<muenzen.length; i++){
                anzMuenzen[i] = (int) (ruekGeld / muenzen[i]);
                ruekGeld -= muenzen[i]*(float)anzMuenzen[i];
                if(anzMuenzen[i]>0) System.out.println(anzMuenzen[i] + " x " + (int)(muenzen[i]*100) + " ct");
            }
            return true;
        }

    }
}
