Zadání soutěžní úlohy kategorie mládež
Vytvořte program, který dokáže vyplnit stanovenou plochu
plošnými objekty ze skupiny malých plošných objektů (tzv.
skládačka). Objekty jsou definovány v souboru *.dat, zadaném
jako parametr při spuštení programu. Soubor obsahuje definici
objektů, které vznikly složením jednoho nebo několika
základních elementů tvaru trojúhelníku 1 * 1 (souřadnice
0,0;1,0;0,1 nebo jeho zrcadlem). Základní elementy se k sobě v
objektu přikládají jedině hranami. Každý objekt má
jedinečné jméno a je určen souřadnicemi vrcholů. Soubor
obsahuje právě jeden objekt se jménem PLOCHA, který definuje
tvar vyplňované plochy. Velikost PLOCHY je maximálně 30 * 30.
Ukázkový definiční soubor:
triangl1;0,0;2,0;0,2
triangl2;0,0;2,0;0,2
ctverec;0,0;2,0;2,2;0,2
PLOCHA;0,0;4,0;4,5;0,5
lichobezka1;0,2;2,0;2,5;0,5
lichobezka2;0,0;2,0;2,3;0,1
- Načtěte ze souboru objekty a PLOCHU.
- Zkontrolujte, zda všechny zadané objekty lze složit ze
základních elementů. Pokud tomu tak nebude, vypište
název chybného objektu a program ukončete.
- Načtené objekty vykreslete.
- Vytvořte soubor se stejným jménem jako vstupní
soubor, ale s příponou .obs, obsahující seznam
načtených objektů a jejich obsahy.
- Určete, zda PLOCHU lze úplně vyplnit objekty:
- bez otáčení a zrcadlení objektů
- pouze s otáčením objektů (rotace 90°, 180°,
270°)
- s otáčením a zrcadlením objektů
(K vyplnění PLOCHY nemusí být použity všechny
objekty.)
- Vykreslete vyplněnou PLOCHU s vyznačením jednotlivých
objektů.
- Hodnocení
- 60% splnění zadání
- 30% efektivita
- 10% dokumentace
- Označení řešení
- hlavní program - soubor se jménem SkladmXX, kde XX je
startovní číslo
- v záhlaví jako komentář startovní číslo a seznam
všech dalších knihoven
- nikde neuvádět jméno soutěžícího