previous up next_inactive

Semester-Projekt - Sudoku

Prof. Dr. Jürgen Cleve

1 Das Spiel

Ein aus Japan stammendes Spiel ist SUDOKU. Gegeben ist eine Matrix (9x9). In diese müssen die Zahlen 1 ...9 mit folgenden Restriktionen eingegeben werden: Gegeben sind einige Zahlen.

\begin{figure}{\LARGE\begin{tabular}{\vert p{0.4cm}p{0.4cm}p{0.4cm}\vert p{0.4cm...
...
~4& & & & & & & &~1\\
& & & & & & &~3& \\ \hline
\end{tabular}}
\end{figure}

Man beachte, dass die Matrix nochmal in Quadranten unterteilt ist. Auch in diesen muss jede Ziffer exakt einaml vorkommen.

Und wie sollen wir hier die Matrix EINDEUTIG auffüllen?

Nun, in jeder Spalte MUSS jede Zahl vorkommen. Wo können wir die 4 in der 2. Spalte platzieren? Nur noch im 1. Quadranten, da die 4 ja schon in den beiden unteren Quadranten enthalten ist. Also kann die 4 nur auf der Position (2,2) platziert werden.

Und so vervollständigt man nach und nach die Matirx.

2 Die Aufgabe

Entwickeln Sie in PROLOG ein Programm, welches eine vorgegebene Matrix entsprechend der obigen Regeln auffüllt.

Bitte nutzen Sie SWI-Prolog.

3 Worauf dürfen Sie aufbauen?

Ich habe eine Datei mit einigen vordefinierten Prädikaten bereitgestellt.

Folgende Schnittstellen / Konventionen halten Sie bitte UNBEDINGT ein.

3.1 Dateien

3.2 Prädikate

Ihr Hauptprädikat muss test/2 heißen. Der erste Parameter ist das zu lösende Rätsel, der zweite die Lösung.

Die Lösung muss selbstverständlich wieder eine Liste von Listen sein.

4 Projektablauf


previous up next_inactive

- Folien - Seminare
J. Cleve - Email : juergen.cleve@hs-wismar.de

2010-01-18