Eigentlich ist es reine Mathematik:
10x + 8y = z wobei z Ihre gewünschte Gesamtmenge ist
Wenn Sie wissen möchten, ob Sie volle Paletten haben oder nicht, empfehle ich, den größten gemeinsamen Faktor der obigen Gleichung zu suchen, der in diesem Fall 2 ist.
Ergebnis: Wenn z / 2 = Ganzzahl und positiv ist, können Sie volle Paletten verwenden.
Wenn Sie wissen möchten, wie viele Paletten von jeder Palette verwendet werden sollen, müssen Sie folgende Schritte ausführen:
Inkrementiere y um 1, solange du keine positive ganze Zahl für x hast, also:
y = y + 1
Daraus ergibt sich folgende Gleichung für x:
x = (z-8y) / 10 wobei z Ihr Gesamtbetrag und y die automatisch inkrementierte Zahl ist
kombiniert mit dem y-Zitat von oben:
for (y = 0; x = positive and integer; y = y + 1) {
x = (z-8y)/10;
print x;
print y;
}
// Diese Schleife nicht starten, wenn z / 2 nicht ganzzahlig und positiv ist
Zum anderen, wenn Sie Paletten zufällig öffnen wollen: Beispiel
10x + 8y = 72
Teilen Sie Ihre Menge durch die höchste Menge pro Palette und teilen Sie den Rest durch die kleinste Menge pro Palette
72 = 10x => x = 7,2
Die ganze Zahl ist hier 7, nehmen Sie also 7 Paletten zu 10 und 2 Einheiten einer Palette zu 8 Einheiten.
Wenn der Rest des Quotienten> = 8 ist, können Sie mindestens 1 volle Palette von 8 nehmen.
Die Implementierung in Excel kostet Sie viel Programmierarbeit und wie in den Kommentaren vorgeschlagen, sollten Sie besser nach dem Add-On "Solver Excel" suchen, das ich ebenfalls noch nicht verwendet habe.