A verseny tárgya, követelményei:

A verseny elsődleges célja az, hogy az általános- és a középiskolák tanulóinak lehetőséget adjon programozási ismereteik és képességeik összehasonlítására.

A versenyt három fordulóban rendezzük meg: az első (iskolai) fordulóból továbbjutó versenyzők közül a második (területi) fordulóban legjobban szereplők jutnak be a harmadik fordulóba, a döntőbe.

  • Az első fordulóban a tanulók analizáló képességét tesszük próbára. 5-10 kisebb feladatot (algoritmus- vagy programrészletet, működési vázlatot) kapnak a versenyzők, és olyan kérdésekre várunk választ, mint pl. (1) mi hiányzik belőle? (2) milyen hibák vannak benne? (3) milyen feltételek mellett működik? (4) hajtsd végre a szövegesen megadott algoritmust! (5) találd ki a feladatot megoldó algoritmust és hajtsd végre! stb.
  • A második fordulóban 3-7 kisebb, konstruáló, szintetizáló jellegű feladatot kell megoldani számítógépen. A versenyzőknek a feladatot megoldó program forráskódját kell elkészíteniük és beadniuk egy automatikus, online értékelő rendszerben. Csak a futási eredményt értékeljük, nem pedig a megírt program szövegét.
  • A harmadik fordulóban a második fordulóhoz hasonlóan 3-7 nagyobb, esetleg már részben megoldott, konstruáló, szintetizáló jellegű feladatot kell megoldani.

Arra törekszünk, hogy a versenyfeladatok a problémamegoldó, algoritmizáló, modellalkotó, modularizáló készséget mérjék fel. A programozási feladatok megoldásának elkészítéséhez több programnyelv közül választhatnak a versenyzők. A hangsúly nem az egyes nyelvek részleteinek, hanem a módszeres programozás fogalmainak, elveinek és gyakorlatának, a helyes programozási módszereknek és stílusnak géptől és nyelvtől független ismeretén van.

A fordulók lebonyolításával, értékelésével, valamint a rendelkezésre álló szoftvereszközökkel kapcsolatos pontos részletekért nézze meg az aktuális versenyfelhívást!

Elvárt alapvető ismeretek középiskolásoktól:

  • Egy Neumann-elvű programozási nyelv elemei. Szintaxisábrák, BNF-jelölés. Strukturált vezérlési szerkezetek: felsorolás (szekvencia), választás (elágazás), ismétlés (ciklus), rekurzió.
  • Adattípusok: egész, valós, logikai, karakter, szöveg. Összetett adatok: tömb, halmaz, rekord, lista, verem, sor, fa, gráf, állomány stb. Láncolt ábrázolás.
  • Felülről lefelé haladó programozás, lépésenkénti finomítással. Programok élesztése, tesztelése, hatékonysági megfontolások.
  • Számábrázolás bináris, oktális, decimális, hexadecimális számrendszerben. Átalakítások, alapműveletek. Fixpontos és lebegőpontos ábrázolás. Pontosság, túlcsordulás.
  • Boole-algebrai és matematikai logikai alapismeretek.
  • Programozási típusalgoritmusok: rendezések, keresések, megszámolás, összegzés, maximumkiválasztás, kiválogatás, stb.
  • Szövegfeldolgozási algoritmusok: tömörítés, keresés.
  • Gráfalgoritmusok: gráfbejárás, fabejárás.
  • Dinamikus programozás, mohó algoritmusok, kombinatorikai és geometriai algoritmusok.

és általánosiskolásoktól:

  • Egy Neumann-elvű programozási nyelv egyszerűbb elemei. Strukturált vezérlési szerkezetek: felsorolás (szekvencia), választás (elágazás), ismétlés (ciklus).
  • Adattípusok: egész, valós, logikai, karakter, szöveg. Összetett adat: tömb, halmaz.
  • Felülről lefelé haladó programozás lépésenkénti finomítással. Programok élesztése, tesztelése, hatékonysági megfontolások.
  • Számábrázolás bináris, decimális számrendszerben. Alapműveletek. Pontosság, túlcsordulás.
  • Boole-algebrai és matematikai logikai alapismeretek.
  • Programozási típusalgoritmusok: rendezések, keresések, megszámolás, összegzés, maximumkiválasztás, kiválogatás, stb.

A versenyt három korcsoportban hirdetjük meg:

  • I. korcsoport: 5-8. osztályosok
  • II. korcsoport: 9-10. osztályosok
  • III. korcsoport: 11-13. osztályosok

Felhívjuk a figyelmet arra, hogy a 3. korcsoport nem azonos az OKTV Digitális kultúra II. kategóriával! Ebbe a korcsoportba elsősorban az OKTV versenykiírásának nem megfelelő, és az OKTV második fordulójába be nem jutott 11-13. osztályos diákokat várjuk.

A 2. és 3. korcsoport feladatsorai azonosak.

ugrás a lap tetejére

Nevezés

Mindig az aktuális versenyfelhívás szerint.

ugrás a lap tetejére

Ajánlott irodalom

Alapvető számítástechnikai és programozási ismeretek

  • Szlávi P., Zsakó L.: Módszeres programozás, MK, Budapest, 1986
  • Számítástechnika középfokon, OMIKK, Budapest, 1987
  • J. Hvorecky, J. Kelemen: Ötlettől az algoritmusig, TK, Budapest, 1987
  • C.H.A. Koster: Programozás felülnézetben, MK, Budapest, 1988
  • Gács P., Lovász L.: Algoritmusok, TK, Budapest, 1987
  • D.E. Knuth: A számítógép-programozás művészete. 1-3., MK, Budapest, 1987-88
  • T.H. Cormen et al.: Algoritmusok. MK, 1997
  • Rónyai L., Ivanyos G., Szabó R.: Algoritmusok, TYPOTEX, 1999

Alkalmazások

  • Filep L.: Játékelmélet (középiskolai szakköri füzet), TK, Budapest, 1985
  • J. Nievergelt, J.C. Ferrar, E.M. Reingold: Matematikai problémák megoldásának számítógépes módszerei, MK, Budapest, 1977

Példatárak

  • Programozási feladatok I-II., Kossuth Kiadó, Budapest, 1997
  • Programozási versenyfeladatok tára (1985-1994), NJSzT, Budapest, 2002
  • Programozási versenyfeladatok tára (1995-1999), NJSzT, Budapest, 2005
  • Programozási versenyfeladatok tára (2000-2004), NJSzT, Budapest, 2007

ugrás a lap tetejére

Letoltheto tananyagok, példatárak

Példatárak

C#

ugrás a lap tetejére

Versenybizottságok

Regionális versenybizottságok:

A Regionális Versenybizottságok (RVB) az első és második fordulók szervezésében, lebonyolításában és értékelésében vesznek részt. Minden megyében - Budapestet is beleértve - több RVB is lehet, a második forduló után közös regionális eredményt hirdetnek. Ha egy településen két vagy több iskola is fogad versenyzőket a regionális fordulóban, megoszthatják egymás között a versenyzőket (a) terület, (b) korcsoport szerint is.

Országos Versenybizottság:

Az Országos Versenybizottság (OVB) a verseny központi szervezési feladatait, az egyes fordulók koordinálását, a feladatsorok összeállítását és az automatikus értékelő rendszer üzemeltetését végzi.

Az OVB részt vesz további, az NJSzT hatáskörébe tartozó nemzetközi versenyek előkészítésében, olimpiai válogatóversenyek szervezésében és lebonyolításában.

E-cím: nemes_prog@inf.elte.hu


Tagok és elérhetőségek:

  • NJSzT OVB
    1364 Budapest, Pf. 201.
    Tel.: (1) 472-2720, Fax: (1) 472-2728
    Titkárság: titkarsag@njszt.hu
  • Dr. Németh Zsolt
    ELTE IK Numerikus Analízis Tanszék
  • Erdősné Dr. Németh Ágnes
    ELTE IK Média- és Oktatásinformatikai Tanszék
  • Dr. Horváth Gyula
    ELTE IK Média- és Oktatásinformatikai Tanszék
  • Pőcze Barnabás, Nikházy László: verseny kiértékelő szoftver üzemeltetése

Támogatóink

A verseny támogatói

ugrás a lap tetejére