Kombinatorische Logik
-
sossenbinder schrieb:
So gibt es halt mehrere Möglichkeiten. Ich brauche hier auch keine fertige Lösung möchte ja nur einen Tipp oder Ansatz.
Was erhoffst du dir davon? Zaubern können wir auch nicht

Du hast die beiden Lösungsansätze schon genannt, if/else oder eine std::map mit allen entsprechend möglichen Kombinationen. Ich finde if/else gerade da du verschiedene Annahmen machen kannst, sobald du z.B. weißt dass beide ints 0 sind, schöner. Aber das ist auch wieder Geschmackssache.Deswegen wollte ich ja mehr über dein Programm wissen, denn dann kann man oft auch konkrete Vorschläge machen, die das Problem ganz anders lösen.
-
Deswegen wollte ich ja mehr über dein Programm wissen, denn dann kann man oft auch konkrete Vorschläge machen, die das Problem ganz anders lösen.
Es geht eigentlich nicht um mehr. Der Benutzer stellt einen Wunsch ein über 2 Integer Werte. Aus verschiedenen anderen Eingabeparamteren wird nun berechnet ob die beiden Wünsche möglich sind. (bei 0 hat er sich nichts gewünscht somit keine weitere Prüfung erforderlich) Wenn nun ein Wunsch nicht möglich sein soll (oder auch beide) wird eine Alternative dafür benötigt. Die wird ebenfalls über eine Auswahl eingestellt.
Zum Schluss gibt es dann ein Ergebnis 0-5.
Du hast die beiden Lösungsansätze schon genannt, if/else oder eine std::map mit allen entsprechend möglichen Kombinationen.
Dann ists auch recht. Dann habe ich noch eine andere Meinung gehört. Und weiß dass ich keine einfachere Lösung übersehen habe.
-
Das mit der Liste ist doch ein roter Hering, oder? Du suchst eigentlich eine Funktion, die dir deine 4 Bools und 2 Ints auf einen Index, also eine natürliche Zahl abbildet. Also (x1, x2, x3, x4, z1, z2) |-> n. Ohne weitere Informationen über die Abbildungsvorschrift kann man dir da nicht weiterhelfen. Die Funktion kann ja beliebig komplex zu berechnen sein.
-
Das mit der Liste ist doch ein roter Hering, oder?
Den Ausdruck habe ich noch nie gehört, was willst du mir damit sagen.
Du suchst eigentlich eine Funktion, die dir deine 4 Bools und 2 Ints auf einen Index, also eine natürliche Zahl abbildet.
Wenn man will kann man das auch so ausdrücken.
Die Funktion kann ja beliebig komplex zu berechnen sein.
Richtig.
Und hier liegt ja genau mein Problem. Es werden sehr viele if else verzweigungen. Aber halt dann auch nur die wo man benötigt. Bei einer Liste gibt es halt aber wiederum sehr viele Einträge.
Ohne weitere Informationen über die Abbildungsvorschrift kann man dir da nicht weiterhelfen.
Soll ich hier alle möglichen Kombinationen die es gibt hier aufführen. Die ist ja in Excel schon recht groß und unübersichtlich.
-
Jetzt habe ich doch tatsächlich nen anderen Namen verwendet

-
sossenbinder schrieb:
Es geht eigentlich nicht um mehr. Der Benutzer stellt einen Wunsch ein über 2 Integer Werte.
Dann bestimme zu erst den Wunsch, und gucke dann ob er erfüllt werden kann. Da dann ja wieder jeder Wunsch möglich ist (soweit ich das verstanden habe) würde ich wieder eine std::map bevorzugen. 2 ints mit 3 Werten macht 9 Möglichkeiten, das ist doch nicht so viel.
Edit:
Um dann mal wieder auf die Meta-Meta Ebene zu gehen: Warum erstellt man einen Wunsch durch zwei Integer
-
Danke für eure Hilfe. Habe es nun mit ein paar Ifs gemacht. Ist nun doch überschaubarer wie gedacht.
-
y-vonne schrieb:
Das mit der Liste ist doch ein roter Hering, oder?
Den Ausdruck habe ich noch nie gehört, was willst du mir damit sagen.
Sorry, unreflektierte Verwendung eines Anglizismus' ("red herring"). Ich meine damit, dass es ein irrelevantes Detail ist, das einen höchstens auf eine falsche Fährte bringt.
-
Warum erstellt man einen Wunsch durch zwei Integer

Mit was sonst?
Wenn ich zwei Auswahllisten habe, ist jedem Eintrag ein Wert zugeordnet.
-
Sorry, unreflektierte Verwendung eines Anglizismus' ("red herring"). Ich meine damit, dass es ein irrelevantes Detail ist, das einen höchstens auf eine falsche Fährte bringt.
Gut. Dann bleiben nun ja keine Fragen mehr offen.
