Courtesy of pxhere

Übersicht

Das Sudoku ist eine Gattung von Logikrätseln, die aus den lateinischen Quadraten entstand. In der üblichen Version ist es das Ziel, ein 9x9-Gitter so mit den Ziffern 1 bis 9 zu füllen, dass jede Ziffer in jeder Reihe, in jeder Spalte und in jedem der neun 3x3-Blöcke genau einmal vorkommt. Das Ziel ist also, das Gitter vollständig mit 81 Zahlen zu füllen, ohne dass diese Regel missachtet wird. Der Ausgangspunkt ist ein Gitter, in dem bereits mehrere Ziffern vorgegeben sind. So könnte ein Sudoku beispielsweise aussehen:

Diese Ziffern sind so gewählt, dass das Sudoku eindeutig lösbar ist. Und hier kommen wir zur Leitfrage dieses Projekts: Wie wird so ein Sudoku erstellt?

Zielsetzung

Das Ziel dieses Projektes liegt darin, mithilfe der in vorherigen Projekten bereits kennengelernten Funktionen ein eigenes Sudoku zu erstellen. Im Detail soll hier also der Umgang mit if, else, repeat, while und for vertieft werden sowie auch die Nutzung des break-Befehls in diesem Kontext.

Vorbereitung

Für die Bearbeitung dieses Projekts solltest du dich zunächst ausführlich mit Sudokus beschäftigen. Falls du mit Sudokus noch nicht so vertraut bist, schaust du dir am besten diese Website für den Einstieg an. Ansonsten kannst du dir auch die Informationen auf Wikipedia zum Ursprung, den Varianten, den Lösungsmethoden und vielen weiteren Informationen zum klassischen Sudoku durchlesen. Vor allem solltest du dir dort diesen Unterpunkt zu Lösungsmethoden sowie auch diesen hier zur Erstellung von Sudokus durchlesen. Eine weitere Hilfe könnte auch sein, selbst einfach mal ein paar Sudokus zu lösen. Dafür gibt es zum Beispiel hier kostenlos die Möglichkeit.

Des Weiteren solltest du dich natürlich über die Funktionen in R und deren Gebrauch informieren. Dafür kannst du dir zum Beispiel das Tutorial zu Loops und Funktionen , dieses Dokument der Universität Ulm anschauen (ab S.17) oder diese Website.

Ansonsten können wir dir auch empfehlen, dich zuerst mit dem etwas einfacheren Projekt 2 “Casino” auseinanderzusetzen, bevor du mit diesem hier fortfährst. Dort kannst du den Umgang mit Funktionen in R einmal üben. Für ein Beispiel kannst du auch bei der Übersicht von Projekt 2 vorbeischauen, wo bereits for, if, else und while benutzt werden.

Das war es erst einmal mit der Einführung. Viel Spaß bei diesem Projekt!

Robin Mehler
Projekte