java-programmierung sudoku

...komplette Frage anzeigen

3 Antworten

Das interessante Problem bei der Sache ist wie viele Felder man rauslöscht. Das enstandene Sudoku muss ja einerseits noch eindeutig lösbar sein (das lässt sich noch relativ leicht überprüfen - hier ist ein Ansatz in Java: http://www.coderanch.com/t/35387/Programming-Diversions/SoDuko-puzzle), aber andererseits soll man es als Mensch ohne zu raten lösen können. Wie man das konkret in Einklang bringt weiss ich allerdings auch nicht, aber 72 Zahlen rauszulöschen ist zu viel - ich meine mich zu erinnern daß mindestens 17 Zahlen gegeben sein müssen.

im Ansatz richtig! Ich würde es anders Machen ... Zur organisation würde ich einfach nen Array nehmen, das 9x9 groß ist ... dort würde ich alle Zahlen zufällig zwischen 1 und 9 reinschreiben , die nach sudoku regeln prüfen und die zahlen dann zufällig anpassen.

Wenn du die komplette 9x9 Matrix voll hast, un die Sudoku gerecht ist, einfach die 9x9 matrix in ein 2. Array kopieren und das als "Lösung" behalten.

Danach aus Array über einen zufallsgenerator 72 Zahlen rauslöschen. und dann den user die felder ausfüllen lassen.

und zur kontrolle immer wieder Array1 mit der Array Kopie vergleichen.

Das wäre in meinen Augen nen vernünftiger Lösungsansatz!

danke... wenn ich dich nicht hätte ;P

0
@dreadkopp

kein ding :D kenne die probleme selber ... durfte an HS-OWL mal den Kurs Informatik 1 mitmachen ... und da wurden wir auch mit Java und solchen ähnlichen programmier aufgaben erschlagen!

Edit: Also wie du das dann genau in Java löst, muss ich passen^^ müsste mich wieder reinarbeiten ... :D ist nen 3/4 Jahr her das ich java programmiert habe!

Nutzt ihr dann für das Darstellen des Sudokufeldes SWING? oder eine andere GUI?

0
@erazzor

hu... keine ahnung... ich kenn mich mit java sowieso nicht aus... und mein kumpel stand auch ganz schön dusselig da... wollten halt erstmal erfragen, ob unser ideenansatz aufgehen würede.... wies dann gemacht wird.... keine ahnung.... ich hab halt son bischen halbwissen ibn programierung dank turbo-pascal... des is alles

0
@dreadkopp

Ja das mag sein ...^^ aber Pseudosprachen sind immer noch die Bestensprachen.....

Wenn man das PRoblem beschreiben kann und dazu die passende lösung hat, muss nur noch die richtige sprache gelernt werden :D

Aber was hier in der Community auch ganz interessant ist, ist das irgendwie jeder zu diesem ganzen Klicki-Bunti kram sein Senf dazu geben kann ,aber sobald es um Programmieren geht(HTML ist keine Programmiersprache) schauen alle dumm aus der Röhre ...

naja ansonsten ich hätte noch nen paar mehr lösungsansätze parat, die nicht speziell auf java zugeschnitten sind^^

0

stichwort rekursion sollte ihm etwas bringen

Liebe/r Xodem,

der Fragesteller würde sich sicherlich über eine ausführlichere Antwort freuen. Vielleicht könntest Du das nächste Mal etwas mehr zur Problematik schreiben.

Vielen Dank für Dein Verständnis

Gerd vom computerfrage.net-Support

0

Was möchtest Du wissen?