Hallo liebe User,
ich habe mal wieder ein kleines Problem.
Ich habe ca 20 verschiedene Werte, weiterhin habe ich eine Summe, die jedoch nicht aus allen 20 Werten besteht sondern nur aus einigen davon. Kennt jemand eine Formel, mit der ich ermitteln kann, aus welchen Werten die Summe besteht?
Ich hoffe es war einigermaßen verständlich. Vielen Dank
Grüße Stefan
Formel gesucht
Moderator: Moderatoren
Re: Formel gesucht
Hallo Stefan,weiterhin habe ich eine Summe, die jedoch nicht aus allen 20 Werten besteht sondern nur aus einigen davon.
Irgend jemand hat doch die Bedingungen für die Berechnung definiert,
wenn du wissen willst was eine Formel so macht, dann zeig uns mal wie die aussieht.
Gruß Holger
-
- *
- Beiträge: 16
- Registriert: Fr, 15.10.2010 08:46
Re: Formel gesucht
nein leider nicht....ich habe die Summen und Werte nur auf Papier und kann mir daher nichts anzeigen lassen.
Re: Formel gesucht
Es gibt so viele denkbare Funktionen.
Woher willst du den wissen ob es wirklich eine [Teil-]Summe ist.
Sorry, aber wenn das nicht definiert werden kann, kann man mE. auch keine Formel erstellen.
Holger
Woher willst du den wissen ob es wirklich eine [Teil-]Summe ist.
Sorry, aber wenn das nicht definiert werden kann, kann man mE. auch keine Formel erstellen.
Holger
-
- *
- Beiträge: 16
- Registriert: Fr, 15.10.2010 08:46
Re: Formel gesucht
hm ja ok...dachte mir schon dass das schwierig wird.
Aber trotzdem vielen Dank
Aber trotzdem vielen Dank
Re: Formel gesucht
Hallo,
das ist reine Fleißarbeit. Ich denke aber, dass Du dazu ein kleines Programm schreiben musst, eine Tabellenkalkulation ist dafür wohl weniger geeignet oder evtl. kannst Du das Programm auch als Makro o.ä. realisieren oder einbinden.
Ohne es jetzt zu genau durchdacht zu haben, musst Du m.E. die 20 möglichen Summanden der Größe nach sortieren (geht vermutlich aber auch so, dann eben der Reihe nach statt der Größe nach). Dann beginnst Du mit dem größten und ziehst ihn von der Summe ab.
Ist die Restsumme (RS1) größer als Null, trägst Du den Summanden in eine andere Liste ein und nimmst von den ursprünglichen Werten den nächsten.
Du ziehst ihn von der Restsumme ab, ist die (RS2) größer als Null, Wert merken und mit dem nächsten fortfahren.
Ist die Restsummer hingegen kleiner als Null, Wert verwerfen und mit dem nächsten probieren.
Ist die Restsumme (RSx) exakt Null, Wert merken und Berechnung beenden, die "beiseite gelegten" Werte sind dann die, die in der Summe verwendet wurden.
Je länger ich darüber nachdenke ..... die erste Variante taugt nur dann, wenn es nur eine Kombination gibt oder eine gefundene reicht. Vom Ablauf viel einfacher ist es (und die Anzahl der "richtigen" Summanden-Kombinationen für die zu treffende Summe ist dabei egal), wenn Du einfach alle möglichen Kombinationen durchrechnest, ein paar verschachtelte Schleifen sind einfach zu machen. Dann musst Du nur noch darüber nachdenken, wie Du Kombinationen mit einem "Treffer" so markierst oder heraus kopierst, dass Du sie später ablesen oder aufsagen kannst. Wahrscheinlich einfach jede mögliche Kombination in einen Zwischenpuffer kopieren, dann summieren, bei Übereinstimmung mit der bekannten Summe in eine extra Trefferliste kopieren, bevor der Puffer geleert und mit der nächsten Kombination gefüllt wird.
Eine Formel ist das nun nicht gerade und ich denke, es gibt auch keine dafür, aber zumindest kann man die Aufgabe "automatisiert" lösen. Und es sei hier nochmal wiederholt, das war nur ein spontan skizzierter Lösungsansatz (bzz. inzwischen sogar zwei), hab jetzt kein Programmchen dafür gemacht und es ausgetestet.
MfG
Drachen
das ist reine Fleißarbeit. Ich denke aber, dass Du dazu ein kleines Programm schreiben musst, eine Tabellenkalkulation ist dafür wohl weniger geeignet oder evtl. kannst Du das Programm auch als Makro o.ä. realisieren oder einbinden.
Ohne es jetzt zu genau durchdacht zu haben, musst Du m.E. die 20 möglichen Summanden der Größe nach sortieren (geht vermutlich aber auch so, dann eben der Reihe nach statt der Größe nach). Dann beginnst Du mit dem größten und ziehst ihn von der Summe ab.
Ist die Restsumme (RS1) größer als Null, trägst Du den Summanden in eine andere Liste ein und nimmst von den ursprünglichen Werten den nächsten.
Du ziehst ihn von der Restsumme ab, ist die (RS2) größer als Null, Wert merken und mit dem nächsten fortfahren.
Ist die Restsummer hingegen kleiner als Null, Wert verwerfen und mit dem nächsten probieren.
Ist die Restsumme (RSx) exakt Null, Wert merken und Berechnung beenden, die "beiseite gelegten" Werte sind dann die, die in der Summe verwendet wurden.
Je länger ich darüber nachdenke ..... die erste Variante taugt nur dann, wenn es nur eine Kombination gibt oder eine gefundene reicht. Vom Ablauf viel einfacher ist es (und die Anzahl der "richtigen" Summanden-Kombinationen für die zu treffende Summe ist dabei egal), wenn Du einfach alle möglichen Kombinationen durchrechnest, ein paar verschachtelte Schleifen sind einfach zu machen. Dann musst Du nur noch darüber nachdenken, wie Du Kombinationen mit einem "Treffer" so markierst oder heraus kopierst, dass Du sie später ablesen oder aufsagen kannst. Wahrscheinlich einfach jede mögliche Kombination in einen Zwischenpuffer kopieren, dann summieren, bei Übereinstimmung mit der bekannten Summe in eine extra Trefferliste kopieren, bevor der Puffer geleert und mit der nächsten Kombination gefüllt wird.
Eine Formel ist das nun nicht gerade und ich denke, es gibt auch keine dafür, aber zumindest kann man die Aufgabe "automatisiert" lösen. Und es sei hier nochmal wiederholt, das war nur ein spontan skizzierter Lösungsansatz (bzz. inzwischen sogar zwei), hab jetzt kein Programmchen dafür gemacht und es ausgetestet.
MfG
Drachen