2 * 6 zustände



  • moin,

    ich habe 2 variablen, die jeweils einen von 6 zuständen annehmen können.
    je nachdem, welche 2 zustände zusammentreffen, sollen unterschiedliche dinge passieren, wobei etwa 5 konstellationen nichts machen.

    ich hab also 6^2 - 5 abfragen zu bewältigen. man könnte das in einen wust aus if/else gießen, aber das finde ich unübersichtlich. eine andere idee wäre eine 6*6 matrix aus handlern/function pointern. gibt es etwas besseres? vielleicht ein 'design pattern?'

    programmiersprache ist c, aber das ist wohl egal.

    vielen dank, dass ich euch meinen kopf zerbrecht.


  • Mod

    Das kommt schwer darauf an, was die Reaktion auf diese Zustände sein soll. Wenn das wirklich beliebig sein kann, so dass z.B. 00 zu "rot", 01 zu "Wäschetrockner", 10 zu "ne3ufhrejg", 11 zu "oder", usw. führt, dann ist die übliche Art und Weise tatsächlich, einfach eine große Tabelle/Matrix zu machen, welche Reaktion auf welche Eingabe erfolgt.

    Wenn es natürlich irgendein Muster gibt, z.B. dass 00 zu 11, 01 zu 12, 10 zu 21, 11 zu 22, usw. führt, dann wäre es vielleicht eine bessere Idee, dieses Muster zu programmieren.



  • Zustandsdiagramme sind hier dein Freund:
    https://de.wikipedia.org/wiki/Zustands%C3%BCbergangsdiagramm


Log in to reply