Tantárgyi adatlap

Download PDF

I. Subject Specification

1. Basic Data
1.1 Title
Programozás alapjai
1.2 Code
BMEEOFTBSFC001-00
1.3 Type
Module with associated contact hours
1.4 Contact hours
Type Hours/week / (days)
Lab 2
1.5 Evaluation
Midterm grade
1.6 Credits
3
1.7 Coordinator
name Dr. Ekler Hajnalka
academic rank Assistant professor
email ekler.hajnalka@emk.bme.hu
1.8 Department
Department of Photogrammetry and Geoinformatics
1.9 Website
1.10 Language of instruction
hungarian
1.11 Curriculum requirements
Compulsory in the Civil Engineering (BSc) programme
1.12 Prerequisites
1.13 Effective date
1 September 2025

2. Objectives and learning outcomes
2.1 Objectives
A tantárgy fő célja, hogy a tanulók alapvető programozási ismereteket szerezzenek és Python programozási nyelvben egyszerűbb szkript feladatokat meg tudjanak oldani önállóan. Olyan programozói szokások kialakítására motiváljuk a hallgatókat, amellyek segítségével később képesek lesznek akár csapatban, komplexebb mérnöki feladatok megoldására, akár nagyobb kódbázisok módosítására is.
2.2 Learning outcomes
Upon successful completion of this subject, the student:
A. Knowledge
1. Ismeri a legfontosabb adatszerkezeteket. 2. Ismeri a legfontosabb vezérlési szerkezeteket. 3. Ismeri az algoritmizálás alapvető eszköztárát és módszereit. 4. Ismeri a programozási alaptételeket. 5. Tud függvénykönyvárakat használni. 6. Tud függvényeket írni. 7. Tud adatokat importálni, ábrázolni és exportálni is. 8. Ismeri a Python nyelv alapvető szintaxisát. 9. Ismeri a legfontosabb programozói szakkifejezéseket angol nyelven is.
B. Skills
1. Megérti a programozás szerepét és fontosságát az építőmérnöki gyakorlatban. 2. Építőmérnöki számítási feladataihoz képes programozási nyelvet és környezetet választani. 3. Képes az építőmérnöki tevékenysége során számítási feladatokat Python programozási nyelven magabiztosan megoldani. 4. Képes az építőmérnöki tervezés számítási módszereit olyan függvényekbe szervezni, amelyeket később más mérnök is fel tud használni. 5. Képes mások által létrehozott kódot olvasni, használni és módosítani. 6. Képes a programozási feladatokhoz kapcsolódó kérdéseire az interneten válaszokat keresni, majd a válaszok közül a 7. relevánsat kiszűrni és validálni. 7. Képes interaktív munkafüzetbe szervezni számításait és a hozzá tartozó dokumentációt. 8. Képes a hibaüzeneteket értelmezni és a hibákat az alapján kijavítani.
C. Attitudes
1. Képes és nyitott új programozási nyelv(ek)et megtanulni. 2. Képes és nyitott az informatikai ismereteit önállóan bővíteni, törekszik a folyamatos önképzésre. 3. Megérti, hogy a programozás nyelve az angol, így törekszik arra, hogy angol (szakmai) nyelvtudását elmélyítse. 4. Munkája során mindig szem előtt tartja, hogy a kódja mások számára is érthető, egyértelmű és könnyen módosítható legyen. 5. Kerüli a felesleges bonyolítást, átlátható, elegáns megoldásokra törekszik. 6. Feladatait igyekszik legjobb tudása szerint, magas színvonalon elvégezni.
D. Autonomy and Responsibility
1. Önállóan tud kisebb mérnöki feladatokat Python programozási nyelvben megoldani. 2. A feladatok megoldása során a rendszerelvű megközelítést alkalmazza. 3. Munkáját minden esetben ellenőrzi és validálja. 4. Felelősséget vállal az általa megírt kód minőségéért.
2.3 Methods
Laborgyakorlat lévén az oktatásban a legnagyobb szerepet az interaktív jelenléti oktatás kapja: A gyakorlat során a hallgatók interaktív munkafüzetekben dolgoznak, ahol az elméleti részeket egyértelműen jelölt programozási feladatok szakítják meg. A hallgatók figyelmét, aktivitását és a monotonitás megtörését az órákon ezek az elméleti és aktív programozási feladatok váltogatása biztosítja. Az órákon a hallgatók a feladatok megoldását nem látják, azonban a Tanulószoba időpontja után a megoldásokat (kódokat és a kódok szöveges leírását) nyilvánossá tesszük, ezzel biztosítva, hogy a hallgatók esetleges hiányzás esetén önállóan is fel tudjanak készülni egy-egy tananyagból. A munkafüzetek végén összefoglalás, ellenőrző kérdések és gyakorló feladatok is segítik a felkészülést. A kiadott interaktív munkafüzetekben egyértelműen megjelölt részeket vagy az egyéb tanulást segítő anyagokat (videó, honlap, könyvrészlet) a hallgatóknak önállóan kell elsajátítani, az ezekhez kapcsolódó kérdéseiket feltehetik a laborgyakorlatokon, Tanulószobán vagy online konzultáció során. Ezek az anyagok számonkérésre kerülnek. A kiadott interaktív munkafüzetek tartalmaznak egyértelműen megjelölt kiegészítő anyagokat, amik vagy a megértést segítik vagy olyan a tananyaghoz kapcsolódó plusz tudást tartalmaznak, amelyek a hallgatók jelenlegi tudás szintjén túlmutat (pl. matematikából még tanult ismeretek), azonban a későbbi tanulmányaik során szükségesek. Ezek a kiegészítő anyagok természetesen nem lesznek számonkérve. A rendszeres kontaktórák mellett a tárgy kompetenciáinak elsajátítását Tanulószoba segíti, ahol egy gyakorlatvezető válaszolja meg a felmerülő kérdéseket.
2.4 Course outline
1. Bevezetés a Python nyelvbe 2. Függvények hívása és függvénykönyvtárak importálása 3. Függvények írása 4. List adatszerkezet 5. Set, dict és tuple adatszerkezetek 6. Numpy alapismeretek 7. ZH 8. Vezérlési szerkezetek 9. Programozási alaptételek I. 10. Programozási alaptételek II. 11. Adatok írása és olvasása 12. Adatok/függvények megjelenítése, optimalizáció 13. Interpoláció 14. ZH
The above programme is tentative and subject to changes due to calendar variations and other reasons specific to the actual semester. Consult the effective detailed course schedule of the course on the subject website.
2.5 Study materials
Moodlben található interaktív munkafüzetek minden gyakorlathoz.
2.6 Other information
-
2.7 Consultation
Konzultációs időpontok: a tanszék honlapján megadottak szerint, vagy előzetesen, e-mail-ben egyeztetve; e-mail: ekler.hajnalka@emk.bme.hu
This Subject Datasheet is valid for:
2025/2026 I. félév

II. Subject requirements

Assessment and evaluation of the learning outcomes
3.1 General rules
A félév során 10 rövid elméleti kérdésekből álló tesztet töltenek ki a hallgatók a gyakorlatok elején, illetve két gyakorlati ZH-t kell teljesíteniük.
3.2 Assessment methods
Teljesítményértékelés neve (típus) Jele Értékelt tanulási eredmények
Bevezetés a Python nyelvbe teszt ED1 A1, A9, B1, B2, B6, C1
Függvénykönyvtárak teszt ED2 A5, A9, B5
Függvényírás teszt ED3 A5, A6, A9, B4, C4
List adatszerkezet teszt ED4 A1, A9
Set, dict, tuple adatszerkezetek teszt ED5 A1, A9
Numpy teszt ED6 A1, A5, A9, B5
Zárthelyi dolgozat 1. ZH1 A1, A5, A6, A8, B4, B7, B8, C1-C6, D1-D4
Vezérlési szerkezetek teszt ED7 A2, A3, A6, A9
Programozási alaptételek 1. teszt ED8 A2, A3, A4, A6, A9
Programozási alaptételek 2. teszt ED9 A2, A3, A4, A6, A9
Import, export teszt ED10 A5, A7, A9, B5
Zárthelyi dolgozat 2. ZH2 A2, A3, A4, A6, A7, A8, B3, B4, B7, B8, C1-C6, D1-D4

The dates of deadlines of assignments/homework can be found in the detailed course schedule on the subject’s website.
3.3 Evaluation system
JeleRészarány
A1, A9, B1, B2, B6, C13%
A5, A9, B53%
A5, A6, A9, B4, C43%
A1, A93%
A1, A93%
A1, A5, A9, B53%
A1, A5, A6, A8, B4, B7, B8, C1-C6, D1-D430%
A2, A3, A6, A93%
A2, A3, A4, A6, A93%
A2, A3, A4, A6, A93%
A5, A7, A9, B53%
A2, A3, A4, A6, A7, A8, B3, B4, B7, B8, C1-C6, D1-D440%
Összesen100%
3.4 Requirements and validity of signature
-
3.5 Grading system
ÉrdemjegyPontszám (P)
jeles(5)85≤P
jó(4)75≤P<85%
közepes(3)65≤P<75%
elégséges(2)50≤P<65%
elégtelen(1)P<50%
3.6 Retake and repeat
Az ED-knek nincs minimumpontjuk, azonban pótlási héten egyszer az összes ED-t egy komplex tesztben lehet pótolni/javítani. A pótlás/javítás során a jobb eredményt vesszük figyelembe, ezzel ösztönöve a hallgatókat, hogy a félév végén átismételjék az elméleti tananyagot. A ZH1 minimum ponthatára 15 pont, és 2 héten belül (összevárva az összes gyakorlatot) órarenden kívül biztosítunk egy pótlási lehetőséget. A pótláson az utolsó megszerzett pont lesz figyelembe véve. A ZH2 minimum ponthatára 20 pont, és pótlási héten órarenden kívül biztosítunk egy pótlási lehetőséget. A pótláson az utolsó megszerzett pont lesz figyelembe véve.
3.7 Estimated workload
TevékenységÓra/félév
Részvétel a kontakt tanórákon14 x 2 = 28
Készülés a gyakorlatokra14 x 2 = 28
Készülés az elméleti tesztekre10 x 1 = 10
Készülés a gyakorlati számonkérésre2 x 12 = 24
3.8 Effective date
1 September 2025
This Subject Datasheet is valid for:
2025/2026 I. félév