| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Rc-freak Registriert seit: Sep 2004 Ort: Steiermark (Ö)
Beiträge: 1.152
| Sudoku - Nicht logischlösbar
Schönen Tage euch alle!!!! Ich hab schon vor längerer Zeit versucht ein Sudoku zu machen. Ich hab mich jetzt in den Ferien mal wieder rangesetzt: Das Sudoku-Feld wird erstellt, es werden alle Felder ausgefüllt und alle Regeln eingehalten. Also der Generator is fertig und funktioniert ohne Fehler. Mein Problem ist aber das Ausblenden der Felder um Sudoku spielen zu können. Es bleiben 34 Zahlen am Feld über. Es ist fast lösbar, außer bei den letzten 4-10 Zahlen ist es nurmehr durch Raten lösbar. (Bei 20 Spielen, 1 mal logisch lösbar). Für Anfänger ist es leicht zu machen, da lass ich vom flash ausrechnen ob durch anwenden der 3 regeln es lösbar ist. (Also auf einfachste weiße). Aber wie sieht es mit den schweren sudokus aus. Wie kann die Logischlösbar machen bzw. das errechnen lassen. (Also ich mein unter schwer, die wo man durch sehr hohen logischen Aufwand die Zahlen findet) Muss ich da bestimmte Zahlen einfach weglassen oder von jeder Zahl eine max. Anzahl aufscheinen lassen. Kann ich überhaupt die Schwierigkeitsstufen so einfach festlegen ohne es vom Computer brechnen zu lassen? Wenn ja wie? Lg, Domsi edit: Die zahlen werden jetzt nur per zufall aus den Feldern gelöscht.
__________________ Für Rechtschreibfehler haftet meine Tastatur. Frühstücken tun alle (Nutella) http://www.dominik-klein.at|Einfache Flashanfängertuts|Geburtstagsreminder lg, Domsi Geändert von Domsi (17-03-2008 um 10:27 Uhr) |
| | |
| | #2 (permalink) |
| muh Registriert seit: Apr 2002 Ort: Freiburg / Stuttgart
Beiträge: 4.338
|
Du musst eben den "sehr hohen logischen Aufwand" bei dir auch im Programm umsetzen. Ein Rätsel ist dann einfach, wenn man ohne diese neuen Regeln logisch zum Ergebnis kommen kann, ist das Sudoku einfach, wenn man sie benötigt, ist es schwer, und wenn man raten muss, verwirfst du es.
__________________ »Carpe diem«, sagte der Graf. (Terry Pratchett: Ruhig Blut!) |
| | |
| | #3 (permalink) |
| Rc-freak Registriert seit: Sep 2004 Ort: Steiermark (Ö)
Beiträge: 1.152
|
Ja nur die Umsetzung schaff ich nicht. Sie sind entweder nur einfach oder nur durch raten zu schaffen. Gibt es zum erstellen irgendwelche tipps oder sowas, wie man sie logisch lösbar machen kann??? Wie gesagt bis auf die letzten 4-10 zahlen is alles logisch und in den letzten Spielzügen wirds nichts mehr. Muss ich da die Zahlen nach einem bestimmen Muster oder bestimmte Anzahl (Anzahl der einzelnen Zahlen) anwenden.... dabei komm ich nicht, ich weiß nicht wie ich weitermachen soll.
__________________ Für Rechtschreibfehler haftet meine Tastatur. Frühstücken tun alle (Nutella) http://www.dominik-klein.at|Einfache Flashanfängertuts|Geburtstagsreminder lg, Domsi |
| | |
| | #4 (permalink) | |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 16.326
|
wollte ich auch schon längst gemacht haben ... naja :-) in meiner fernsehzeitschrift gibt es immer 3 sudokus: leicht mittel schwer leicht ist, wenn man durch ausschluss das rätzel komplett lösen kann. ausschluss ist z.b.: in dieser zeile ist schon eine 9 in der ist schon eine 9, in dieser spalte ist schon eine 9, ein feld ist schon belegt, also bleibt 'dieses' feld übrig ... hierbei hat man auch immer sehr schnell komplette zeilen/ spalten und blöcke vollständig. und zwar überall. schwer ist, wenn man alle ausschlüsse durch hat und der rest ist mehrdeutig (so wie du geschrieben hast) für alle restlichen fälle sind mindestens 2 felder möglich. jetzt müsste man ein bleistift nehmen und ausprobieren - dazu bin ich dann immer zu faul ;-) das soll der computer machen, der kann sowas besser. mittel ist, das weiss ich nicht genau, woran die das ausmachen. vielleicht, wenn man beim ausschluss zusätzlich zu zeilen und spalten auch noch die blöcke mit berücksichtigt? und hier bleiben ganze blöcke bis zum schluss unbesetzt. ein kriterium könnte auch die anzahl und schwere der ausschlüsse sein: in der zeile nicht, in der spalte nicht ... == x bedingungen für diese stelle + je mögliches/notwendiges backtracking nochmal x punkte + natürlich die anzahl der zu vervollständigenden ziffern jedenfalls dürfte es keine formel geben, wann was was ist. also ausprobieren und dabei nach den oben genannten kriterien bewerten. Zitat:
http://de.wikipedia.org/wiki/Backtracking
__________________ die ultimative antwort auf alle programmierfragen: der debugger mfg h.g.seib www.SeibsProgrammLaden.de Geändert von hgseib (17-03-2008 um 17:45 Uhr) | |
| | |
| | #5 (permalink) |
| Nagelneuer User Registriert seit: Dec 2005
Beiträge: 924
|
Ich habe vor einiger Zeit auch schon mal ein bißchen danach gegooglet. Es gab damals ein Open Source Paket, auf das sich alle anderen bezogen hatten. Ich weiss leider nicht mehr welches es war, aber das kriegst du bestimmt schnell selbst heraus. Da kannst du dir bestimmt was abschauen.
__________________ The fact that you've got "Replica" written on the side of your gun and the fact that I've got "Desert Eagle written on the side of mine ... :D |
| | |
| | #6 (permalink) |
| muh Registriert seit: Apr 2002 Ort: Freiburg / Stuttgart
Beiträge: 4.338
|
Ein erster Schritt könnte sein, sich erstmal zu allen leeren Feldern zu merken, welche Zahlen nicht direkt auszuschließen sind, (Zeile, Spalte, Block) Damit wiederum kannst du dir dann wiederum weitere Schlüsse überlegen, beispielsweise, wenn in einem Block die 3 nur an zwei Feldern stehen kann, und diese Felder in einer Zeile / Spalte sind, dann kann in dieser Zeile / Spalte keine weitere 3 stehen. Wenn man sich da einige Beispiele aufmalt, kann man sicher viele solche Regeln finden.
__________________ »Carpe diem«, sagte der Graf. (Terry Pratchett: Ruhig Blut!) |
| | |
| | #7 (permalink) |
| Rc-freak Registriert seit: Sep 2004 Ort: Steiermark (Ö)
Beiträge: 1.152
|
hm... Danke euch. Da waren jetzt einige brauchbare Vorschläge dabei. Ich werde einfach mal solche Sudokus generieren und dann austesten was wäre wenn. Und mit den "alten Hilfsmitteln" Stift und Papier das ausprobieren wie ich es dem Computer mitteilen kann. (Eigentlich ist das Programmieren von Sudoku, wie das Lösen von Sudokus, man muss logisch denken und man trainiert seine "Sudoku-Fähigkeiten") Naja ich werde mich hier dann mal versuchen. Wenn ich eine weitergekommen bin werde ich mich wieder melden. Aber trotzdem schon mal, danke für eure Antworten. Lg, Domsi
__________________ Für Rechtschreibfehler haftet meine Tastatur. Frühstücken tun alle (Nutella) http://www.dominik-klein.at|Einfache Flashanfängertuts|Geburtstagsreminder lg, Domsi |
| | |
| | #8 (permalink) |
| Neuer User Registriert seit: Mar 2006
Beiträge: 1.573
|
ich probier nie ![]() also man kann doch jedes ohne probieren direkt lösen. wenn man z.b. durch ausschließen nciht weiterkommt guckt man nach spalten bzw. reihen dort müssen ja auch alle zahlen von 1-9 vorkommen und dann guckt man wieder was wo hinkann. wenn 2 zahlen möglich sind geht man eben so 2-3 schritte mit der zahl im kopf weiter und schaut ob die möglich ist. also ich hab noch nie mit bleistift daneben geschrieben...is doch voll blödi :P ^^ vllt müsstest du erstmal eine computerlösung anbieten können bei jedem von dir generierten sudoku. dann kannst du doch anstatt es rückwärts zu bearbeiten einfach vorwärts gehen und an gewissen stellen zahlen wegnehmen, wo du weißt das kann man normal logisch lösen, da der computer es über diesen weg ja nach den normalen regeln macht?
__________________ Currently working on: - --- --- ----------------------------------------------------------------- ActionScript 3.0, C++, Java, Delphi |
| | |
| | #10 (permalink) | |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 16.326
| Zitat:
-------------------- und wikipedia ist immer gut, wenn man eine erklärung haben möchte http://de.wikipedia.org/wiki/Sudoku
__________________ die ultimative antwort auf alle programmierfragen: der debugger mfg h.g.seib www.SeibsProgrammLaden.de Geändert von hgseib (19-03-2008 um 15:24 Uhr) | |
| | |
| | #11 (permalink) |
| Neuer User Registriert seit: Mar 2006
Beiträge: 1.573
| im sinne von mit bleistift und so ![]() damit versaut man doch alles wenns dann nicht klapt
__________________ Currently working on: - --- --- ----------------------------------------------------------------- ActionScript 3.0, C++, Java, Delphi |
| | |
| | #12 (permalink) |
| ?-Developer Registriert seit: Jul 2004 Ort: Zuchwil (CH)
Beiträge: 903
|
Wie gut ist deine Sudoku-Löser-Funktion? Denn du musst zuerst ein Sudoku per Programmierung lösen können, bevor du den Generator richtig nutzen kannst
__________________ Nur tote Fische schwimmen mit dem Strom |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |