Übungen - Datenstrukturen

Aufgabe 1: Zugriff auf geschachtelte Daten

Ergänze die Ergebnisse. Überprüfe sie mit Python.

>>> lottoschein = [
    [(3, 6, 19, 21, 38, 41), (4, 9, 17, 37, 38, 39), (18, 23, 28, 36, 38, 46)],
    ('Losnummer', 4440674),
    ('Superzahl', 4),
    ('Ziehungstage', 'Sa + Mi'),
    ('Laufzeit', 1),
    ('Spiel 77', False),
    ('Super 6', False),
    ('Gluecksspirale', False)
    ]
>>> lottoschein[0][1]
...
>>> lottoschein[0][1][2]
...
>>> lottoschein[1][0]
...

Aufgabe 2: Datenmodellierung

Wie könnte man die Gewinnquoten beim Lotto mit Datenstrukturen erfassen?

Gewinnquoten

Aufgabe 3: Magische Quadrate

Ein magisches Quadrat ist eine quadratische Anordnung der Zahlen 1, 2, ..., sodass die Summe der Zahlen aller Zeilen, Spalten und der beiden Diagonalen gleich ist.

Eines der bekanntesten magischen Quadrate ist auf dem Kupferstich Melencolia I von Albrecht Dürer zu sehen.

magisches Quadrat
Quelle: Wikimedia Commons

Entwickle ein Programm, mit dem man ein quadratisches Zahlenfeld daraufhin überprüfen kann, ob es ein magisches Quadrat darstellt.

Aufgabe 4: Sudoku

Sicher kennst du Sudoku.

Sudoku

Ziel ist es bei diesem Rätsel, die Zahlen 1 bis 9 so in das Quadratgitter zu füllen, dass jede Zahl in jeder Spalte, in jeder Zeile und in jedem 3x3-Block genau einmal vorkommt.

Hier ein Lösungsvorschlag zum oben gezeigten Sudoku. Nur, etwas stimmt hier nicht!

Sudoku

Deine Aufgabe ist es, ein Programm zu entwickeln, mit dem man Sudoku-Lösungsvorschläge auf ihre Korrektheit überprüfen kann. Das Programm soll gegebenenfalls Rückmeldungen über die gefundenen Fehler machen.

Überlege dir zunächst eine Datenstruktur zur Verwaltung von Sudokus. Entwickle anschließend ein Verfahren, mit dem man die Korrektheit von Sudokus testen kann und implementiere es in Python.

Für Experten: Viel schwieriger ist es, zu einem vorgegebenen Sudoku-Rätsel eine Lösung automatisiert zu erzeugen.


Quellen

Foto: Magisches Quadrat - Urheber: Albrecht Dürer - Lizenz: public domain

X

Fehler melden

X

Suche