Feladat: I.349 Korcsoport: - Nehézségi fok: -
Füzet: 2014/május, 292 - 293. 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.

I. 349 (É). Egy N×M (2N,M50) négyzet alakú és egyforma méretű telkekből álló lakótelepen a házak magassága, szintjeinek száma K (1K9). Az épületek minden szintjén egy lakás található. A 0 érték parkot jelöl. Szomszéd négyzeteken most négyet értünk, az ábrának megfelelően.

 
 

Készítsünk programot i349 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 a parkokat adja meg.
 
Példa  telep.txt  fájl    4 5     24001     31230     43024     12031   
 

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 területének hány százaléka park. A választ írassuk ki a képernyőre két tizedes jegy pontosan.
3.Minden sűrűn beépített lakótelepen probléma a kilátás. Egy lakásból addig lehet egy irányba kilátni, amíg a neki megfelelő szintszámnál kisebb házak következnek. Írassuk ki a lakótelep azon lakásainak számát, ahonnan valamelyik irányba ki lehet látni a lakótelepről.
4.Vannak igényes érdeklődök, akik eladó lakást keresnek. Számukra a kilátás és a park vagy a lakótelep szélének szomszédsága értékes. Olvassunk be egy szintszámot és írassuk ki, hogy hány megadott szinten lévő lakás van a lakótelepen, ahonnan több irányba ki lehet látni, illetve ezek közül hány van park vagy lakótelep szélén. Az eredményt a képernyőn a következő formában jelenítsük meg:
4 irányban kilátás: 0 lakás, ebből park/lakótelep szélén: 0 lakás
3 irányban kilátás: 0 lakás, ebből park/lakótelep szélén: 0 lakás
2 irányban kilátás: 6 lakás, ebből park/lakótelep szélén: 6 lakás
1 irányban kilátás: 6 lakás, ebből park/lakótelep szélén: 6 lakás
0 irányban kilátás: 3 lakás, ebből park/lakótelep szélén: 2 lakás

5.Városépítészeti szempontból a lakótelep látványa is fontos. Határozzuk meg minden oszlopra és sorra, hogy fentről, lentről, jobbról és balról nézve hány épület látszik. Az épületek a velük azonos vagy kisebb más épületeket eltakarják. Az eredményeket a latvany.txt állományba írjuk ki a következő formában:
fentről: 3 1 1 1 2lentről: 2 3 1 1 2balról: 2 1 1 3jobbról: 2 1 1 2   

6.A városlakók igénylik a minél több és nagyobb zöldterületeket. Olvassuk be a lakótelep egy telkének pozícióját sor, oszlop formában a bal felső sarokhoz képest, és adjuk meg, hogy ott park van-e. Ha igen, akkor a park területének méretét a telkek egységében adjuk meg.

Beküldendő a program forráskódja (i349.pas, i349.cpp, ...) és rövid dokumentációja (i349.txt, i349.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ó.