Klassenrechner
-
Hallo geschätze C++-Pros,
leider kann ich aufgrund meiner mangelnden C++ Erfahrung nicht einmal die Frage spezifizierter stellen... ich hoffe durch ausführlichere Formulierung kann ich den Sachverhalt des Problems verständlicher erläutern:
Ich möchte ein Programm schreiben, dass einzelne Klassen hinsichtlich eingegebener Referenzwerte vergleicht und addiert. z.B
Referenzwerte {rw1 = 10, rw2 = 15, rw3 = 40}
Klasse a {rw1 = 3, rw2 = 6, rw3 = 0}
Klasse b {rw1 = 10, rw2 = 15, rw3 = 40}
Klasse c {rw1 = 8, rw2 = 6, rw3 = 16}
Klasse d {rw1 = 0, rw2 = 0, rw3 = 32}die Referenzwerte sind variabel. Das Programm soll nun je nach Eingabe dieser ausrechnen, welche Klassen in welcher Kombination diese Werte ergeben z.B. 1x Klasse d + 2x Klasse a + 0.5x Klasse c / 1x Klasse b / usw.
Meine Frage nun: wie ist so etwas machbar?
Besten Dank für die aufgewendete Zeit & Nerven zur Beantwortung.
Gruss KeinPlan
-
Kannst Du vielleicht ein wenig genauer schreiben, was Du damit machen/erreichen willst bzw. wie du das praktisch verwenden möchtest?
Mir persönlich erschließt sich das nicht so richtig, von daher schwer zu sagen wie ich sowas implementieren würde.
Ich bin mir auch nicht so ganz klar darüber ob du den Unterschied zwischen Klassen und Objekten kennst.
Für mich sieht es so aus als ob alle Klassen, dass selbe machen können sollen.
Mit anderen Worten warum möchtest Du mehr als 1 Klasse und wie unterscheidet die sich von den anderen.
-
Also ist das Problem, lineare Gleichungssysteme zu lösen?

-
Ruvi schrieb:
Kannst Du vielleicht ein wenig genauer schreiben, was Du damit machen/erreichen willst bzw. wie du das praktisch verwenden möchtest?
Mir persönlich erschließt sich das nicht so richtig, von daher schwer zu sagen wie ich sowas implementieren würde.
Ich bin mir auch nicht so ganz klar darüber ob du den Unterschied zwischen Klassen und Objekten kennst.
Für mich sieht es so aus als ob alle Klassen, dass selbe machen können sollen.
Mit anderen Worten warum möchtest Du mehr als 1 Klasse und wie unterscheidet die sich von den anderen.Danke für die rasche Antwort.
Du hast Recht, es sollten Objekte sein, nicht Klassen, sorry.
Die Objekte unterscheiden sich nur von den Werte, sollten aber das selbe können.Schlussendlich sollte es damit zum Beispiel möglich sein, dass ich verschiedene Münzen habe, weiss wie hoch der Anteil des jeweiligen Metalls pro Münze ist und ich nun wissen möchte, wie viele Münzen ich von welchem Typ wie kombinieren muss, um schlussendlich, nach dem Einschmelzen, von Material x 10, von Material y 20 und von Material z 15 Kilogramm zu erhalten.
-
185 schrieb:
Also ist das Problem, lineare Gleichungssysteme zu lösen?

Hallo, Danke für die Antwort
Weiss leider nicht, ob sich das mit einer linaren Gleichung lösen lässt, da es sich ja um mehrere Werte gleichzeitig in mehreren Variablen handelt.
Falls dir eine Gleichung dazu einfällt, darfst du sie gerne mitteilen

-
Einfach erstmal naiv alle Kombinationen durchgehen geht nicht weil?
-
TGGC schrieb:
Einfach erstmal naiv alle Kombinationen durchgehen geht nicht weil?
Danke für die Antwort
Sollte schon gehen, sofern es überhaupt realisierbar ist mit den gegebenen Objekten. Für den Fall, dass jedoch nur 1/2 bzw. 1/4 eines Objektes mit anderen kombiniert zum Ziel führt, hatte ich gehofft, es gäbe eine andere Möglichkeit sich evtl. mathematisch heranzutasten.
-
Wie 185 schon schrieb, das ist ein ganz gewöhnliches lineares Gleichungssystem.
Kennst du die Dinger?
-
MFK schrieb:
Wie 185 schon schrieb, das ist ein ganz gewöhnliches lineares Gleichungssystem.
Kennst du die Dinger?Hallo,
Kenn ich schon, aber nicht in diesem Umfang. Schlussendlich hat ein Objekt nicht nur 3, sondern ca 30 Eigenschaften und es gibt ca 200 Objekte. Aber wenn ihr beide der Meinung seit, dass sich mein Problem durch ein lineares Gleichungssystem beheben lässt, mach ich mich in diesem Bereich mal schlauer.
Danke für die Antworten

-
Wenn auch Brueche erlaubt sind, dann ist das so. Wenn nur ganze Loesungen erlaubt sind, ist es naemlich etwas komplizierter.
-
Lineare Gleichungssysteme bringen mich auf jeden Fall der Lösung einen grossen Schritt näher. Das Problem ist nur, dass nicht alle Objekte verwendet werden sollten, ausser es geht nicht anders. Brüche eigentlich suboptimal, im schlimmsten Fall aber auch gängig. Lieber zuerst alle Objekte mit einbeziehen, bevor Brüche verwendet werden.
Das Programm sollte irgendwie heraussuchen, wie sich die gewünschten Werte mit möglichst wenigen verschiedenen Objekten realisieren lassen.
Ich denke ich versuche das Ganze jetzt mal wie TGGC in seinem ersten Post bereits erwähnt hat, indem ich alle Kombinationen durchprobieren lasse.
Vielen Dank für die sehr hilfreichen Antworten. Sobald ich das nächste Mal stecken bleibe, freue ich mich, hier wieder schreiben zu dürfen.
Gruss
-
Bei ganzzahligen Loesungen muesstet du nach diophantischen Gleichungen schauen. Fuer die gibts aber soweit ich weiss keine allgemeingueltigen Loesungen.
-
TGGC schrieb:
Bei ganzzahligen Loesungen muesstet du nach diophantischen Gleichungen schauen. Fuer die gibts aber soweit ich weiss keine allgemeingueltigen Loesungen.
Danke für den Hinweis. Glücklicherweise wird es soweit wohl nicht kommen. Die Referenzwerte welche ich durch kombination der einzelnen Objekte erreichen möchte, sind nicht statisch, sondern bezeichnen einen Wertebereich. Ich hoffe, dass ich es daher mit dem normalen Gleichungssystem und nicht einem diophantischen Gleichungssystem hinkriege

Gruss
-
TGGC schrieb:
Bei ganzzahligen Loesungen muesstet du nach diophantischen Gleichungen schauen. Fuer die gibts aber soweit ich weiss keine allgemeingueltigen Loesungen.
In dem Fall reicht wohl auch etwas http://de.wikipedia.org/wiki/Lineare_Optimierung . Bei diophantischen Gleichungen denke ich eher an nichtlineare Gleichungen oder zumindest an Gleichungen über endlichen Körpern.