Einen Betrag X auf X Tage verteilen

Bluedaishi

Bekanntes Mitglied
Hallo ich habe folgendes Problem
ich versuche einen Betrag X = 4560,30
auf eine Anzahl Tage Y = 31 zu verteilen es müssen auch negative Zahlen vorkommen.

Am Ende müssen die Summen aller 31 Tage zusammen den Wert X ergeben

Hat da jemand eine Idee

Vielen Dank für die Mühe 🙂
 
Guten Morgen
Das heist ich muss mit Math.random arbeiten und einen Bereich von als Beispiel -500 bis 1500 angeben und die Zufalls Zahl von der gesamt Summe abziehen bis Sie 0 ist richtig ???
 
Also ich habe einen Betrag X = 4150,60 als Beispiel dann habe ich Tage Y = 20 oder 30 ja nachdem jetzt will ich X auf die 20 Tage verteilen wobei es wichtig ist das auch - minus Beträge vorhanden sind. Wenn alles verteilt ist muss das Ergebnis X ergeben

Beispiel

01.07 306,00
02.07 -150,70
03.07 220,30
usw

Der max Bereich wäre dann 4150,60
 
Ich denke Integer.MAX_VALUE wäre dann X
Und der min wert sollte auch nicht größer sein als X also -4150,60
 
Zuletzt bearbeitet:
Java:
    static void aufteilen() {
        Random random = new Random();
        float x = 4560.30f;
        int y = 31;
        int offset = 200;
        float z = 2 * (x / y + offset);
        float summe = 0;
        for (int i = 0; i < y - 1; i++) {
            int r = random.nextInt((int) z) - offset;
            summe += r;
            System.out.println("Tag: " + (i + 1) + " , Betrag: " + r + " , Summe: " + summe);
        }
        float r = x - summe;
        summe += r;
        System.out.println("Tag: " + y + " , Betrag: " + r + " , Summe: " + summe);
    }

Code:
Tag: 1 , Betrag: -133 , Summe: -133.0
Tag: 2 , Betrag: -113 , Summe: -246.0
Tag: 3 , Betrag: 217 , Summe: -29.0
Tag: 4 , Betrag: 163 , Summe: 134.0
Tag: 5 , Betrag: 336 , Summe: 470.0
Tag: 6 , Betrag: -168 , Summe: 302.0
Tag: 7 , Betrag: 137 , Summe: 439.0
Tag: 8 , Betrag: -154 , Summe: 285.0
Tag: 9 , Betrag: 353 , Summe: 638.0
Tag: 10 , Betrag: 390 , Summe: 1028.0
Tag: 11 , Betrag: 476 , Summe: 1504.0
Tag: 12 , Betrag: -41 , Summe: 1463.0
Tag: 13 , Betrag: 493 , Summe: 1956.0
Tag: 14 , Betrag: 88 , Summe: 2044.0
Tag: 15 , Betrag: 324 , Summe: 2368.0
Tag: 16 , Betrag: 134 , Summe: 2502.0
Tag: 17 , Betrag: 306 , Summe: 2808.0
Tag: 18 , Betrag: 473 , Summe: 3281.0
Tag: 19 , Betrag: 48 , Summe: 3329.0
Tag: 20 , Betrag: 58 , Summe: 3387.0
Tag: 21 , Betrag: 185 , Summe: 3572.0
Tag: 22 , Betrag: 210 , Summe: 3782.0
Tag: 23 , Betrag: 52 , Summe: 3834.0
Tag: 24 , Betrag: 52 , Summe: 3886.0
Tag: 25 , Betrag: 404 , Summe: 4290.0
Tag: 26 , Betrag: 101 , Summe: 4391.0
Tag: 27 , Betrag: -125 , Summe: 4266.0
Tag: 28 , Betrag: -196 , Summe: 4070.0
Tag: 29 , Betrag: 467 , Summe: 4537.0
Tag: 30 , Betrag: -191 , Summe: 4346.0
Tag: 31 , Betrag: 214.2998 , Summe: 4560.3

So schwer auch nicht.
 
Ja manchmal hat man eben ein Brett vor dem kopf und geht die Sache viel zu kompliziert an :-(
trotzdem vielen danke für deine Hilfe super 🙂
 

Neue Themen


Zurück
Oben