Feladat: I.352 Korcsoport: - Nehézségi fok: -
Füzet: 2014/szeptember, 356 - 358. oldal  PDF  |  MathML 

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.

Egy N×M (2N,M50) négyzet alakú és egyforma méretű telkekből álló lakótelepen a házak szintjeinek száma K (1K9). Minden telekre egy épületet építettek, az épületek minden szintjén egy lakás található.

 
 

Készítsünk programot i352 néven, amely a lakótelep telep.txt állományban rendelkezésre álló adatait felhasználva néhány kérdésre választ ad.
A képernyőre írást igénylő feladatok eredményének megjelenítése előtt írjuk ki a képernyőre a feladat sorszámát (például: 3. feladat). Ha a felhasználótól kérünk be adatot, akkor jelenítsük meg a képernyőn azt is, hogy milyen adatot várunk. Az ékezetmentes kiírás is elfogadott.
A telep.txt fájl első sora N és M értékét adja meg. Az ezt követő N sor a lakótelep épületeinek szintszámát és végül a lakótelep festéséhez felhasznált színek (például: fehér, sárga, zöld, narancs) egybetűs rövidítését tartalmazza.
 
Példa  telep.txt  fájl    4 5     24531     31235     43124     12131     fszn   
 

1.Olvassuk be a telep.txt állományban talált adatokat, és azok felhasználásával oldjuk meg a következő feladatokat.
2.Határozzuk meg, hogy a lakótelep lakásainak hány százaléka van 1,2,...,9 szintes épületben. A választ írassuk ki a képernyőre két tizedesjegy pontosan az alábbi formában:
9. szint: 5,34%8. szint: 4,48%...   

3.Számoljuk meg a ,,körpanorámás'' lakások számát a lakótelepen. A körpanoráma azt jelenti, hogy a lakásból mind a négy oldalán az oldalakra merőleges irányban ki lehet látni a lakótelepről. A kilátást a lakások adott oldalán az abba az irányba épített, velük azonos vagy magasabb más épületrészek eltakarják.

A lakótelep felújításánál az épületeket csíkosra újra festik úgy, hogy minden épületszint más színű lesz a bemenetnél megadott sorrend szerint ismétlődően. A festést a lakótelep térképét tekintve bal felső épületénél kezdik alulról felfelé, és az épületeken soronként balról jobbra haladnak. Egy új épület első szintjének színe az előző épület legfelső szintjének színe után következő lesz.
4.Írassuk ki a felso.txt állományba a legfelső épületszintek színét a következő formában:
 
Példa kimenetifelso.txt  fájl    sszsz     szfnf     fnfzz     nszsz   
 

5.A lakótelep látványában a festés után fontos a változatosság. Olvassuk be a lakótelep egy épületének pozícióját sor, oszlop formában a bal felső sarokhoz képest, és adjuk meg, hogy van-e olyan szomszédja, amelynek színezése azonos módon kezdődik az első szinttől felfelé függetlenül az épületek magasságától.
 
Példa bemenet   Kimenet   2 2   Van    2 3   Nincs   
 

6.Az előző beolvasott pozíciójú épület tetejére (következő szintként) egy reklámfeliratot helyeznek el. Írassuk ki, hogy hány lakásból látható ez. Az épületek a velük azonos vagy kisebb más épületrészeket eltakarják és a láthatóság csak sorban és oszlopban értelmezett.

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