Michael Schröpl: Mathematik in Informatik?

Beitrag lesen

Hi Thomas,

  • das Damenproblem dagegen besteht im Wesentlichen aus dem Entwurf der geeigneten Datenstruktur (wie repräsentiert man Diagonalen?),
    x1,y1;x2,y2

äh - ich hätte jetzt die Deklaration einer Datenstruktur erwartet oder etwas Vergleichbares.

Das normale Schachbrett bei der Springer-Aufgabe wird ja typischerweise als array ['A'..'H', 1..8] of boolean repräsentiert. (Ich _liebe_ PASCAL ... :-)

Bei der Damen-Aufgabe braucht man das nicht: Wenn man die Fähigkeiten der Dame analysiert, dann weiß man, daß jede Dame die Zeile, die Spalte und die beiden Diagonalen durch ihr Feld bedroht.
Also repräsentiert man auch nur genau diese Daten - durch zwei Arrays [1..8] of boolean für die Zeilen und Spalten sowie durch ... zwei Arrays [-7..7] für die beiden Arten von Diagonalen. Diese Koordinatentransformation macht das Arbeiten sehr viel angenehmer: Pro "Platzieren" einer Dame muß man gerade mal vier Flags prüfen bzw. setzen.
Bei der Damen-Aufgabe sieht die Datenstruktur also ganz anders aus und hat mit dem normalen Schachbrett nichts mehr zu tun - dafür muß man dann aber keine Logik implementieren, die beispielsweise prüft, ob zwei Damen auf derselben Diagonale stehen.

Viele Grüße
      Michael

--
T'Pol: I apologize if I acted inappropriately.
V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.