Tantárgy neve, kódja: Programozási alapismeretek, GJARBAN-PROGRAMA-1

Szak neve, képzési szintje: Járműmérnöki alapszak, BSc
Tanterv: 2021
Heti órászám (előadás + gyakorlat + labor): 2+0+2
Kreditérték: 4
Elmélet: 50 %
Gyakorlat: 50 %
A tantárgy tantervi helye: 2. félév
Munkarend: Nappali
Előtanulmányi feltételek: Műszaki informatika
Értékelés: gyakorlati jegy
Tantárgy besorolása: kötelező
Oktatás nyelve: Magyar
Tantárgyfelelős: Dr. Pásztor Attila
Felelős tanszék: Informatika Tanszék
Tantárgy oktatója(i): Dr. Rajkó Árpád Róbert , Farkas Attila, Szekeres György
Ellenőrzésért felel:
Tárgy oktatásának célja:
A tárgy célja, hogy a hallgatók megismerjék a programozási alapelveket és azok Python nyelvű megvalósításait. A hallgatók megismerik az alapvető programozási szerkezeteket, adatstruktúrákat és problémamegoldó technikákat. A kurzus során hangsúlyozott a gyakorlati tapasztalatok és a gyakorlati programozási készségek fejlesztése.
Elsajátítandó ismeretanyag előadás:

1-2. hét: Bevezetés a programozásba és a Python alapjai • Mi a programozás? • Miért Python? • A programozási környezet beállítása (Python és egy IDE telepítése). • Alapvető szintaxis: változók, adattípusok (egész számok, lebegőpontos számok, karakterláncok, logikai értékek), operátorok. • Bemeneti/kimeneti műveletek: felhasználói bemenet bekérése és kimenet megjelenítése. 3-4. hét: Vezérlési struktúrák • Feltételes utasítások: if, elif, else. • Ciklusok: for és while ciklusok, break és continue utasítások. • Egymásba ágyazott ciklusok. • Gyakorlati példák: egyszerű játékok, számkitaláló játék. 5-6. hét: Függvények • Függvények definiálása és meghívása. • Függvény argumentumok és paraméterek. • Visszatérési értékek. • Hatókör és lokális/globális változók. • Rekurzió (opcionális). 7-8. hét: Adatstruktúrák • Listák: létrehozás, hozzáférés, módosítás, listák manipulálása (append, insert, remove, szeletelés). • Tuple-ök: változatlanság, kibontás. • Szótárak: kulcs-érték párok, szótárelemek elérése és módosítása. 9-10. hét: Munkavégzés karakterláncokkal • Karakterlánc-manipuláció: szeletelés, összefűzés, metódusok (split, join, find, replace). • Karakterlánc formázás. • Reguláris kifejezések (bevezetés). 11-12. hét: Bevezetés az objektumorientált programozásba (OOP) • Osztályok és objektumok: osztályok definiálása, objektumok (példányok) létrehozása. • Attribútumok és metódusok. • Alapvető OOP fogalmak: beágyazás, öröklődés, polimorfizmus (rövid áttekintés). 13. hét: Projekt/ismétlés • Záróprojekt: a hallgatók egy olyan kis programozási projekten dolgoznak, amely integrálja a kurzus során tanult fogalmakat. • Kurzus ismétlése és kérdések-válaszok.


Elsajátítandó ismeretanyag laboratórium:

Visual Studio Code 2025 programozási környezet használata. • Alapvető programozási fogalmak megértése: változók, adattípusok, operátorok, vezérlési struktúrák (if-else, ciklusok), függvények. • Alapvető adatstruktúrák használatának elsajátítása: listák, tuple-ök, szótárak. • Python kód írásának, hibakeresésének és tesztelésének elsajátítása. • Problémamegoldó és algoritmikus gondolkodási készségek fejlesztése. • Python alkalmazása egyszerű valós problémák megoldására. • A kód olvashatóságának, karbantarthatóságának és bevált gyakorlatok fontosságának megértése.

Elsajátítandó szakmai kompetenciák (tudás, képesség, attitűd, autonómia és felelősség, további szakmai kompetenciák):
Tudása:

Legalább egy meghatározó programozási környezetben képes készség szintjén C++ alapszinten programozni, és a fontosabb algoritmusokat alkalmazni.

Képességei:


Attitűdje:


Autonómia és felelősség:


További szakmai kompetenciák:


A számonkérés és értékelés rendszere:
Félévközi tanulmányi követelmények:
• Házi feladatok: Havi programozási feladatok a tanult fogalmak alkalmazására. • Gyakorlati projektek: Záróprojekt a tudás integrálására és alkalmazására. Értékelés: 1,ha%∈[0,30); 2,ha%∈[30,50); 3,ha%∈[50,65); 4,ha%∈[65,80); 5,ha%∈[80,100] • Házi feladatok: 25% • Záróprojekt: 25% • Gyakorlaton belüli részvétel és tesztek: 30% • Előadásokon való részvétel és aktivitás: 20%
Vizsgakövetelmények:

Tanulmányi segédanyagok, laborháttér:

Az ajánlott irodalom, a gyakorlatokon megírt programok, a fejlesztési környezet súgó állománya. A gyakorlatokon, minden hallgatónak külön, korszerű számítógépes hozzáférés biztosított. Az internetes források a hallgatók részére fenntartott számítógépes szolgáltató teremben hozzáférhetőek.

Kötelező irodalom:

[1] A Python nyelv hivatalos oldala: https://www.python.org/ [2] Peter Wentworth, Jeffrey Elkner, Allen B. Downey and Chris Meyers: Hogyan gondolkozz úgy, mint egy informatikus: Tanulás Python 3 segítségével 3. kiadás, (2019) https://mtmi.unideb.hu/course/view.php?id=9#section-1

Ajánlott irodalom:

[3] Ramses van Zon: Introduction to Programming (SCMP142), (2024) All lecture slides: https://education.scinet.utoronto.ca/mod/resource/view.php?id=3486 [4] Marty Stepp, Moshe Goldstein: Introduction to Programming with Python (2016) Slides: https://sites.cs.ucsb.edu/~tyang/class/240a16w/slides/pythonQuick.pdf