Feladat: I.180 Korcsoport: - Nehézségi fok: -
Füzet: 2008/február, 106. oldal  PDF  |  MathML 
Témakör(ök): Feladat

A szöveg csak Firefox böngészőben jelenik meg helyesen. Használja a fenti PDF file-ra mutató link-et a letöltésre.

Helyezzünk el nyolc bástyát a sakktáblán úgy, hogy közülük négy világos, négy sötét mezőre kerüljön, és egyik se üsse a másikat. Készítsünk számítógépes programot, amely megadja az összes lehetséges elhelyezést. A sakktábla oszlopai és sorai a szokásos módon betűkkel és számokkal vannak jelölve. Két elhelyezést akkor tekintünk különbözőnek, ha abban valamely mezőn az egyik elhelyezésben van bástya, a másikban pedig nincs. A program az összes elhelyezést egy szöveges állományba írja. Az állomány neve a program egyetlen parancssori argumentuma. Az elhelyezéseket a program az általa talált sorrendben írja a kimeneti állományba. Minden elhelyezés leírása tíz sorból áll: az első sorban az elhelyezés sorszáma szerepel, majd az ezt követő nyolc sorban a bástyák elhelyezése, és azután egy üres sor. A bástyák elhelyezését a táblán ,,X'' karakterek, az üres mezőket a pont (,,.'') jelzi:

X........X.........X......X...........X.....X..........X.....X..

Beküldendő a program forráskódja (i180.pas, i180.cpp, ...), valamint a program rövid dokumentációja (i180.txt, i180.pdf, ...), amely tartalmazza vázlatosan a megoldás leírását, és megadja, hogy a forrásállomány melyik fejlesztő környezetben fordítható.