tekitár
FeladatokVersenyek
← Vissza a feladatokhoz
tekitár

Az Országos Grafikus Programozási Verseny feladatainak és megoldásainak tára. Az oldalt az ELTE Informatikai Kar működteti.

Elérhetőségek

  • Lakó Viktória – lavnaat@inf.elte.hu
  • Nagy Bendegúz – brandy@inf.elte.hu

Jogi és beállítások

  • Adatvédelmi szabályzat
  • Cookie szabályzat

© 2026 tekitár. minden jog fenntartva.

← Vissza a feladatokhoz
2017 · Döntő / Harmadik forduló · 7–8. évfolyam5. feladat33 pont

Képtömörítés

Elágazás: hakülönbenElágazás: hakElágazás: haFix szög: 90 (derékszög)Fix szög: 45 (egyenlőszárú derékszögű)Ismétlés: ism SZÁM (fix)Kitöltés: töltMintázatok: rekurzióLista- és szövegkezelés: lista [elem1 elem2 …]Lista- és szövegkezelés: elsőnélküliLista- és szövegkezelés: elsőLista- és szövegkezelés: utolsóSegédeljárás: négyzetAlapalakzatok: négyzetEljárások neve: kirajzolóEljárások neve: rajzolEljárások neve: négyzetEljárások neve: melyikEljárások száma: 5Paraméterek száma (max / eljárás): 2

Minél nagyobb a kép, annal nagyobb helyet foglal el, ha minden egyes képpont színét külön-külön tároljuk. Érdemes ilyenkor különböző tömörítő algoritmusokat használni, hogy helytakarékosabb megoldásokhoz jussunk!

Kapunk egy tömörített képet, a feladatunk az, hogy rajzoljuk ki az eredeti képet! A tömörítést a következő módon készítették el: megvizsgálták, hogy a kép azonos színekből áll-e, mert ha igen elég ezt a színt tárolni. Ilyenkor a kódban egy 0 értéket és a szín kódját helyezték el. Ha nem azonos, akkor négy egyenlő részre bontották a képet és újra megvizsgálták az így kapott részeket, hogy azonos színű pontokból állnak-e vagy tovább kell azokat bontani. (Addig bontották tovább, amíg azonos színekből álló négyzetes képet nem kaptak.) A kép négy részét sorszámozták 1-től 4-ig (1 – bal felső, 2 – jobb felső, 3 – bal alsó, 4 – jobb alsó). Azt, hogy melyik képdarabról van szó, azzal írták le, hogy milyen sorszámú négyzetek darabolásával jutottak el hozzá. Például a 32 azt jelenti, hogy az eredeti kép 3-as számú (jobb alsó) darabjának 2-es számú darabjáról (jobb felső) van szó!

Készítsd el a kirajzoló :tömörítettkép eljárást, ahol a :tömörítettkép a listában tárolt kódokat jelenti! A p – piros, k – kék, s- sárga és z – zöld szín megfelelője.

kirajzoló [0p]
kirajzoló [10p 20s 30z 40k]

0p

10p

kirajzoló [110k 120p 130p 140p 20s 30z 410s 420z 430p 440k]

110k

Rács4

rács 60