Hier sind die Hausaufgaben

Hier sind die Hausaufgaben

Heute ist der erste Schultag im Jahr 2021 hier in Bayern. Aufgrund der Schließung, die wir in ganz Deutschland haben, und dem damit verbundenen Hausunterricht, haben wir festgestellt, dass es hilft, unsere Kinder zu motivieren, ihre Hausaufgaben zu machen, wenn sie uns Erwachsene auch arbeiten sehen. Hier sind also Deine Hausaufgaben.

Da die meisten von uns wahrscheinlich "The Queen's Gambit" gesehen haben, dachten wir, dass eine Schachaufgabe angemessen wäre.

Wir möchten, dass Du eine Software schreibst, die bei Vorgabe einer Schachfigur und ihrer Position auf einem ansonsten leeren Brett alle möglichen Züge für diese Figur ausgibt. Wähle Deine Lieblingsfigur aus: König, Turm, Läufer, Königin, Springer, or Bauer.

Nicht anspruchsvoll genug? Dann erweitere Deine Lösung so, dass sie auch für nicht leere Platinen funktioniert. Beachten Sie, dass die jeweiligen Regeln für das Capturing beachtet werden müssen. Für die Zwecke dieser Übung ist es uns egal, ob der Brettzustand durch tatsächliches Spielen erreicht werden kann.

Die Lösung muss nicht vollständig sein, aber was Du uns schickst, muss funktionieren. Eine Textausgabe auf dem CLI ist für uns gut genug. Automatisierte Tests sind optional, aber willkommen.

Warum, wirst Du Dich vielleicht fragen, solltest Du diese Hausaufgaben machen? Berechtigte Frage.

Wir laden Dich dazu ein, Deine Lösung bis Freitag, den 15. Januar 2021 um 12:00 Uhr (CET) als komprimiertes Archiv an team@thephp.cc zu schicken. Wir werden uns alle eingesendeten Lösungen einsehen und eine Auswahl daraus in unserem Code-Review auf The Online PHP Conference diskutieren, natürlich anonym und konstruktiv.

Natürlich brauchst Du ein Ticket für die Konferenz, um an der Code-Review-Sitzung teilzunehmen. Aber wir werden dafür sorgen, dass die ganze Konferenz sich lohnt.