Programozási alapismeretek
Szerzők
Gregorics Tibor, Heizlerné Bakonyi Viktória, Horváth Győző, Menyhárt László, Pap Gábor Sándorné, Papp-Varga Zsuzsanna, Szlávi Péter, Zsakó László
Vissza a tartalomjegyzékhez
A modul célja és tartalma
Probléma megoldási stratégiák, az informatikai problémamegoldás alapjai. A problémák megoldásához szükséges informatikai eszközök és módszerek. A problémamegoldás lépései. Mi a programozás, a programkészítés folyamata. A feladat és a program. Programkészítési elvek. Algoritmikus struktúrák és adattípusok kialakulása - programozási modellek. Algoritmus-leíró eszközök.
Konstans, változó, típus fogalma. Elemi és összetett adatok, file-szervezés. Egész és valós számok, logikai értékek, karakterek. Tömbök, szövegek, rekordok - ezek fogalma, használata.
Algoritmikus struktúrák. Elemi algoritmusok típusfeladatokra. Összegzés, eldöntés, keresés, számlálás, maximum-kiválasztás, kiválogatás, rendezések.
Egy programozási nyelv alapvető elemei (értékadás, beolvasás, kiírás, elágazások, ciklusok, eljárások, függvények, konstansok, változók, típusok definiálása). A programfejlesztői környezet, szerkesztés, fordítás, futtatás.
A programkészítés, mint termék előállítási folyamat (feladat-meghatározás, tervezés, kódolás, tesztelés, hibakeresés, hatékonyság- és minőségvizsgálat, dokumentálás) elemi szinten.
Nyelvi, tervezési, kódolási, kipróbálási eszközök, amelyek az algoritmusok, illetve a kitűzött feladatok megvalósításához szükségesek. Egy programozási nyelv (C++) elemeinek megismerése, alkalmazása. Alapvető tesztelési, hibakeresési módszerek, ezek támogatása egy programozási nyelv fejlesztői környezetében. Az elkészült programok minőségi elemzése.
Vissza a tartalomjegyzékhez
A modul leckéi, a megértéshez szükséges előismeretek, tárgyi feltételek
Leckék
- Mi is ez az anyag? - A legfőbb tudnivalók
- A problémamegoldás lépései
- A specifikáció
- Algoritmusleíró eszközök
- Az első Code::Blocks-os tapasztalatok
- A programozás nyelvi alapjai
- Az értéktípus
- Konzolalkalmazás készítése C++-ban; tipikus részek egy egyszerű C++ programban
- Ciklusok, tömbök, adatszerkezet-programszerkezet
- Egyszerű elágazást vagy ciklust igénylő feladatok megoldása tervezéssel
- Szöveg; néhány jellegzetes tömbös/szöveges feladatfajta
- Adatellenőrzés do-while ciklussal; C++ ciklusok; konstans tömbök használata
- Egyszerűbb algoritmusminták (sorozatszámítás, eldöntés, kiválasztás, keresés, megszámolás, maximumkiválasztás)
- A sorozatszámítás, eldöntés, kiválasztás, keresés, megszámolás, maximumkiválasztás algoritmusmintákkal tervezett programok implementálása
- Rekordok; függvények; paraméterezés
- Sorozatszámítás, eldöntés, kiválasztás, keresés, megszámolás, maximumkiválasztás algoritmusmintákkal tervezett programok implementálása
- Függvények használata; tömbök függvényekben
- Sorozatszámítás, eldöntés, kiválasztás, keresés, megszámolás, maximumkiválasztás algoritmusmintákkal tervezett programok (újra)implementálása (paraméterekkel, globális programváltozókkal)
- Összetett adattípusok (rekord, vektor, mátrix, szöveges fájlok)
- Összetettebb algoritmusminták (másolás, kiválogatás, szétválogatás, metszet, egyesítés, összefuttatás)
- A másolás, kiválogatás, szétválogatás, metszet, egyesítés, összefuttatás algoritmusmintákkal tervezett programok implementálása
- Másolási, kiválogatási, szétválogatási tételt alkalmazó feladatok implementálása szöveges fájlokkal
- Unió és metszet tételt alkalmazó feladatok implementálása szöveges fájlokkal
- Programkészítési elvek
- Tesztelés
- Hibakeresés és javítás
- Kódolás
- Dokumentálás
- Algoritmusminták együttes alkalmazása
- Rendezések és hatékonyságmérések
- Rendezések implementálása, mérése
- Alapvető adatmodellezési ismeretek; program-Excel tábla export-import
- Számonkérés
- Keresés rendezett sorozatban
- Visszalépéses keresés (backtrack)
- Kombinatorikus algoritmusok
- Véletlen algoritmus
- Mohó algoritmusok
- Közelítő számítások
- Segédösszegek
Előismeretek
- Minimális (Windows) operációs rendszer-kezelési ismeretek, programtelepítési gyakorlat.
Tárgyi feltételek
- Számítógép, internet/hálózat-elérés.
Vissza a tartalomjegyzékhez
Elvárások a tanuló felé (minimum– és optimumszint)
Minimumszint
Nincs
Optimumszint
Előnyös, ha a tanuló rendelkezik némi programozási előképzettséggel, gyakorlattal.
Vissza a tartalomjegyzékhez
A modul irodalomjegyzéke, források
Kötelező irodalom
- Illés Zoltán: Programozási nyelvek: C++
Mikrológia 23, ELTE IK, 2008.
- Benkő László - Benkő Tiborné - Tóth Bertalan: Programozzunk C nyelven! – kezdőknek – középhaladóknak
Computerbooks Kiadói Kft, 2008.
Kötelező irodalom alkategória (opcionális, ebből a blokkból több is szerepelhet)
Vissza a tartalomjegyzékhez
Ajánlott irodalom
- http://people.inf.elte.hu/gt/prog/nyelv_egysz.pdf
- http://www.cplusplus.com/
- Szlávi Péter - Zsakó László: Módszeres programozás: Programozási bevezető.
Mikrológia 18, ELTE IK, 2008.
- Szlávi Péter - Zsakó László: Módszeres programozás:–: Programozási tételek.
Mikrológia 19, ELTE IK, 2008.
- Szlávi Péter - Temesvári Tibor - Zsakó László: Módszeres programozás: A programkészítés technológiája.
Mikrológia 21, ELTE IK, 2008.
Ajánlott irodalom alkategória (opcionális, ebből a blokkból több is szerepelhet)
Vissza a tartalomjegyzékhez
Kulcsszavak
Programozásmódszertan, kódolás, algoritmus, programozási nyelv, C++, programfejlesztői környezet
Vissza a tartalomjegyzékhez