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. A sportlövő edzéseken a hagyományos lőfegyvereken kívül elektronikus változatokat is használnak. A lőállásokból ekkor monitorokon szimulált lőlapokra történik a ,,tüzelés''. Elektronikus rendszer tárolja a lövések koordinátáit és értékeli ki az eredményeket. A lősorozat megkezdése előtt a céltábla közepének koordinátáit tárolják. Majd ‐ ugyanebben a koordinátarendszerben ‐ rögzítésre kerülnek a versenyző lövéseinek vízszintes és függőleges koordinátái. A kiértékeléshez a találatok körértékét számolják ki. Ennek szabályai a következők:
‐ | A középponttól mért távolság irányú összetevőinek meghatározásához a találat vízszintes és függőleges koordinátáiból kivonják a céltábla középpontjának megfelelő koordinátáit: |
‐ | A lövés a maximális 10 kört éri, ha a céltábla közepébe talált. Az érték annyival csökken, ahány egységgel messzebb van a középponttól: . |
‐ | Ha a találat a középponttól 10-nél nagyobb távolságra van, akkor a körérték 0. |
‐ | A körértéket végül két tizedesre kerekítik. |
A honlapunkról letölthető a lolap.txt állomány első sorában () a lövések száma, a második sorában a céltábla közepének , () koordinátái találhatók. Az ezt követő sorban a versenyző egyes találatainak , () koordinátái olvashatók. Például:
65 28.95 31.60 23.67 30.18 35.12 50.27 30.45 34.67 A példa jelentése:
‐ | 65 találat eredményét értékeljük ki. |
‐ | A céltábla középpontjának koordinátái: . |
‐ | Az első találat esetén és . A körérték tehát . |
‐ | A második találat körértéke 0. |
Készítsünk programot loveszet néven, amely az alábbi problémákat oldja meg: A képernyőre írást igénylő részfeladatok eredményének megjelenítése előtt írjuk a képernyőre a feladat sorszámát (például 3. feladat: ). A körértékeket mindig két tizedes pontossággal jelenítsük meg, felesleges tizedes jegyek ne legyenek.
1. | Olvassuk be a lolap.txt állományban talált adatokat, és annak felhasználásával oldjuk meg a következő feladatokat. Ha az állományt nem tudjuk beolvasni, akkor a forrás első 10 sorának adatait jegyezzük be a programba, és úgy oldjuk meg a következő feladatokat. |
2. | Listázzuk ki a legnagyobb találat sorszámát és körértékét. |
3. | A célra tartás egyenletességének jellemzéséhez adjuk meg, hogy a lősorozatban hány 0 körértékű találat volt. |
4. | Határozzuk meg, hogy melyik egymás utáni tíz lövés körértékének átlaga a legnagyobb. A képernyőre írassuk ki a sorozat első lövésének sorszámát. |
5. | A lövész teljesítményét jellemzi, ha valamelyik irányban több találata van, mint a többiben. Adjuk meg, hogy a nem 0 körértékű találatok közül hány volt az egyes síknegyedekben. Írjuk képernyőre az eredményeket a következőhöz hasonló formában: ,,1. síknegyedben: 13 találat, 2. síknegyedben: 18 találat, ...''. |
6. | Adjuk meg, hogy volt-e olyan egymás utáni négy lövés, hogy a találatok az 1., a 2., a 3. és a 4. síknegyedbe csapódtak egymás után. |
7. | Kérjünk be egy körértéket, és adjuk meg annak a leghosszabb lövéssorozatnak a hosszát, amelyben ennél rosszabbat a lövész nem lőtt. |
Beküldendő egy tömörített i229.zip állományban a program forráskódja (i229.pas, i229.cpp, ), valamint a program rövid dokumentációja (i229.txt, i229.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ó. |