Mehrere Ziffern in einem char



  • Ahoi,
    ich bräuchte einen kleinen Denkanstoss für mein Problem oder einen neuen Ansatz, da mir zur Zeit nichts besseres einfällt. Vll kann mir ja jemand helfen...

    Ich habe einen 2 dimensionalen Array char feld[9][9] und will aba mehrere unabhängige Ziffern ein einem dieser chars speichern. Also das auf feld[2][3] die Ziffern 2, 4 und 5 zum Beispiel drinstehen. Nun so allein geht das ja nicht, aber ich bräuchte irgendeine Möglichkeit dazu. Ich habe mir schon überlegt aus dem 2dimensionalen Array vll einen 3dimensionalen zu machen, aber bei diesem kann ich ja auch nur immer eine Ziffer speichern und nicht mehrere. Vll hat ja auch jemand eine ganz andere Idee. Ich bitte um hilfe^^



  • Ein char kann nur ein Zeichen aufnehmen. Vielleicht kannst du ein Array von Strings nehmen und dann die Zahlen mit Kommas getrennt ablegen.

    Aber das ist keine gute Lösung. Weiß aber auch nicht, was du genau machen willst.



  • Lass mich raten - das soll ein Sudoku-Solver werden. In dem Fall könntest du ja statt der char's ein bitset<> verwenden und die einzelnen Bits auf true oder false setzen, je nachdem welche Zahlen vorkommen.
    (oder du nimmst int's und hantierst manuell mit Bit-Operatoren)



  • omfg, gut geraten xD

    des mit den bitsets is ne perfekte idee, danke dir. aber wie kann ich die in dem 2dimensionalen feld integrieren?

    Und gibts bei anderen Programmiersprachen auch solche bitsets oder wie könnte man zB bei Java oder oder ähnlichem so ein Problem angehen?



  • Versuch's mal mit "bitset<9> feld[9][9];" (bitset's sind Datentypen wie jeder andere, können also auch zu Arrays etc zusammengefasst werden.)

    (und wenn du mehr über deren Funktionen wissen willst, schau mal unter C++ Reference nach)

    omfg, gut geraten xD

    Naja, bei deinen Vorgaben blieben nicht mehr viele Alternativen 😉


Anmelden zum Antworten