AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Sudoku Generator

Ein Thema von Antigo · begonnen am 2. Jan 2007 · letzter Beitrag vom 2. Jan 2007
Antwort Antwort
Antigo

Registriert seit: 14. Mär 2005
274 Beiträge
 
#1

Sudoku Generator

  Alt 2. Jan 2007, 18:47
Hi,
Ich möcht ein zufälliges Sudoku generieren. ALs Algorithmus dachte ich folgendes:

Nimm dir das aktuelle Feld (am Anfang [0,0]) und schreibe eine Zufallszahl hinein
Teste das Suoku Feld auf Zeilen, Spalten und Blöcke (leeres Feld gilt als Joker)
Wenn Test positiv, gehe zum nächsten
Wenn Test negativ, dann wiedehole Schritt 1 und 2 solange bis der Test positiv ist oder alle Zahlen versucht wurden
Wenn test negativ und alle Zahlen bereits versucht wurden, leere das Sudoku und beginne von neuem


Ich weiss, das ganz von neuem beginnen ist etwas krass und kostet mit Sicherheit Zeit, aber generell müsste man so doch in annehmbarer Zeit ein zufälliges Sudoku Feld generieren können, oder nicht?

Wenn ich meine Prozedur ausführe rechnet und rechnet er und nichts kommt dabei rum. Also habe ich entweder den Algorithmus falsch umgesetzt oder er dauert einfach viel zu lange.

Was meint ihr dazu?
Michael
"How should I know if it works? That's what beta testers are for. I only coded it."
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#2

Re: Sudoku Generator

  Alt 2. Jan 2007, 18:54
Ich hatte auch mal einen (nichtfunktionierenden) sudoku-generator nach obigem prinzip gebaut. Nur bei Schritt 4 hat mein programm das störende feld ermittelt und abgeändert (die prozedur mit den neuen koordinaten rekursiv aufgerufen) statt neu anzufangen.

Ergebnis: Entweder, es hat sich aufgehängt, es kam totaler quatsch raus ( z.b. mehrmals dieselbe zahl in einer reihe) oder es gab nen stack überlauf...
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.639 Beiträge
 
#3

Re: Sudoku Generator

  Alt 2. Jan 2007, 19:16
Erm.. Such mal hier in der DP nach Soduko - vor allem nach den Threads in denen Olli und Hagen (negaH) was geschrieben haben.

Quintessenz war, dass es wohl geschickter sei, erst einen Sudoku-Löser zu bauen und denn dann Rückwärts anzusetzen um an Sudokus zu kommen, die auch lösbar sind.

Und ne MENGE Tipps und Tricks generell dazu und auch wie man da auch von der Geschwindkeit her passabel hinkommt stehen da auch drin.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Antigo

Registriert seit: 14. Mär 2005
274 Beiträge
 
#4

Re: Sudoku Generator

  Alt 2. Jan 2007, 22:12
danke für die antworten.

Ich hab mich etwas durchgelesen und mich für die backtracking methode entschieden. Also fülle ich wie gehabt Zufallszahlen in das Sudoku rein und wenns nicht mehr weitergeht gehe ich ein Feld zurück und haue eine andere Zahl rein usw.

Ist auch von der Geschwindigkeit her i.O.
Michael
"How should I know if it works? That's what beta testers are for. I only coded it."
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:27 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz