====== Számítástechnika - GEIAK201-B2 (L) ====== **Tantervi háló szerinti szakok**: Gépészmérnöki, Ipari termék- és formatervező mérnöki, Járműmérnöki, Mechatronikai mérnöki **Tárgyjegyző**: Dr. Nehéz Károly, intézetigazgató, tanszékvezető egyetemi docens **Gyakorlatvezető:** Szabó Martin, egyetemi tanársegéd ===== 2025 - 2026 tanév, I. félév ===== ==== Aktuális tematika ==== {{tanszek:oktatas:szamitastechnika:tematika2023.pdf|Nappali és levelező tematika}} ==== Minta zárthelyi feladatsor ==== {{tanszek:oktatas:szamitastechnika:minta_zh_2021.pdf|Minta Zh}} ==== Online tesztek ===== Általános teszt (az első előadások és gyakorlatok anyagából): https://compaq.iit.uni-miskolc.hu/szamtech-teszt/ C programozás teszt: https://compaq.iit.uni-miskolc.hu/szamtech-teszt-c/ ==== Előadások/Témakörök ==== 1.) {{tanszek:oktatas:szamitastechnika:01_hardver.pdf|Hardver alapismeretek}} * [[Hardver alapismeretek|Hardver alapismeretek]] * [[8_bit_CPU_simulator|8 bites CPU szimulátor]] * játék - kiegészítő anyag: https://www.nandgame.com/ * megoldások: https://github.com/timlg07/NandGame-Solutions/blob/master/Solutions.md 2.) {{tanszek:oktatas:szamitastechnika:02_szoftver.pdf|Szoftver alapismeretek}} * [[Szoftver alapismeretek|Szoftver alapismeretek]] * [[bináris műveletek| Bináris műveletek a gyakorlatban]] * kiegészítő anyag: [[ARM assembly alapok]] * kiegészítő anyag: [[https://www.jdoodle.com/compile-assembler-nasm-online-ide|x86-os fordító]] 3.) Kiegészítő anyag: {{tanszek:oktatas:szamitastechnika:03_powerpoint2007.pdf|Power Point}} {{tanszek:oktatas:szamitastechnika:03_word2016.pdf|Word}} 4.) Kiegészítő anyag: {{tanszek:oktatas:szamitastechnika:04_excel2007_1.pdf|Excel I.}} {{tanszek:oktatas:szamitastechnika:04_excel2007_2.pdf|}} 5.) {{tanszek:oktatas:szamitastechnika:05_c_bevezeto.pdf|C nyelv bevezető}} {{tanszek:oktatas:szamitastechnika:05_c_operatorok.pdf| Operátorok}} * [[tanszek:oktatas:szamitastechnika:complier_mukoedese|Compiler működése]] * [[tanszek:oktatas:szamitastechnika:adat_tipusok|Adattípusok]] * [[Egyszerű mintapéldák]] * [[Operátorok]] * [[Mutatók (pointerek)]] * Kiegészítő anyag: {{tanszek:oktatas:szamitastechnika:secrets_of_printf.pdf|Printf titkai (angol)}} 6.) {{tanszek:oktatas:szamitastechnika:06_c_ciklus.pdf| Ciklusok}} {{tanszek:oktatas:szamitastechnika:06_c_vektor.pdf| Vektorok, Sztringek}} * [[Blokkok - Ciklusok]] * [[Vektorok peldak|Vektorok kezelésére mintapéldák]] * [[Vektorok peldak 2|Vektorok kezelésére mintapéldák 2]] * [[Buffer túlcsordulás|Buffer túlcsordulás probléma]] Gyakorlás: * [[Alap építőkövek]] - minimum feladatok * [[Gyakorló feladatok 1]] 7.) {{tanszek:oktatas:szamitastechnika:07_c_szamlalas_kivalasztas.pdf| Számlálás és kiválasztás}} {{tanszek:oktatas:szamitastechnika:07_c_rendezes.pdf| Rendezés 1.}} [[https://www.youtube.com/watch?v=lyZQPjUT5B4| Rendezés algoritmusa]] [[https://www.youtube.com/watch?v=ywWBy6J5gz8 |Gyorsrendezés algoritmusa]] 8.) {{tanszek:oktatas:szamitastechnika:08_c_fueggvenyek.pdf| Függvények}} {{tanszek:oktatas:szamitastechnika:08_c_buborekrendezes.pdf| Rendezés 2}} * [[Fuggvenyek peldak|Függvények használata mintapéldák]] 9.) {{tanszek:oktatas:szamitastechnika:09_c_matrix.pdf|Mátrixok kezelése}} {{tanszek:oktatas:szamitastechnika:09_c_osztbasor.pdf|Osztályokba sorolás}} * [[Memoria kezeles peldak|Memória kezelés mintapéldák]] * [[Matrixok peldak|Matrixok használata mintapéldák]] 10.) {{tanszek:oktatas:szamitastechnika:10_c_taroloszt.pdf| Tárolási osztályok}} {{tanszek:oktatas:szamitastechnika:10_c_structe.pdf| Struktúrák}} * [[Strukturak peldak| Struktúrák mintapéldák]] 11.) {{tanszek:oktatas:szamitastechnika:11_c_file.pdf|Fáljkezelés}} {{tanszek:oktatas:szamitastechnika:11_c_konyvt_fv1.pdf|Könyvtári függvények 1.}} * [[Fajlkezeles peldak| Fájlkezelés mintapéldák]] 12.) {{tanszek:oktatas:szamitastechnika:12_c_konyvtari2.pdf|Könyvtári függvények 2.}} {{tanszek:oktatas:szamitastechnika:12_c_felt_ford.pdf|}} * [[Konyvtari fuggvenyek peldak| Könyvtári függvények]] 13.) [[összetett_feladatok]] ==== Gyakorlatok ==== 1. **[[Algoritmusok és folyamatábrák]]** - Algoritmus fogalma - Folyamatábrák jelei, rajzolási szabályok - Egyszerű példák (összegzés, minimum keresés, stb.) 2. **[[Bevezetés a C nyelvbe és programfelépítés]]** - Fordítóprogramok, fejlesztői környezetek - A program szerkezete: `#include`, `main()` - Az első "Hello, World!" program - Utasítások, pontosvessző, kommentek 3. **[[Adattípusok, változók, be- és kimenet, operátorok]]** - Alap adattípusok: `int`, `float`, `double`, `char` - Változók és konstansok - `printf()` és `scanf()` használata - Aritmetikai, logikai, relációs és értékadó operátorok 4. **[[Elágazások]]** - `if`, `else if`, `else` - `switch-case` szerkezet - Számológép készítése - Korábbi folyamatábrák megoldása C programmal I. 5. **[[Ciklusok]]** - `for`, `while`, `do-while` - `break`, `continue` - Korábbi folyamatábrák megoldása C programmal II. 6. **Szünet** 7. **[[Vektorok/mátrixok]]** - Egydimenziós és kétdimenziós vektorok - Alap tömbműveletek - Rendezés és keresés tömbben 8. **[[Karakterláncok (stringek)]]** - C stílusú stringek (`char[]`, `\0`) - Alap műveletek: `strlen`, `strcpy`, `strcmp` stb. - Szövegfeldolgozás 9. **[[Függvények]]** - Függvények definiálása és hívása - Paraméterátadás érték szerint - `return` használata 10. **[[Struktúrák]]** - `struct` definiálása és használata - Egyszerű adatmodellek (pl. diákok adatai) 12. **[[Fájlkezelés]]** - Fájl megnyitása, olvasás és írás (`fopen`, `fscanf`, `fprintf`) - Szöveges és bináris fájlok - Egyszerű adatbázis készítése fájlban ==== Gyakorló feladatok ===== Egyszerű c gyakorló feladatok és megoldások: [[gyakorló feladatok c| C gyakorlatok 1]] Teszt gyakorló feladatok: * [[teszt feladatok 1|teszt feladatok 1]] * [[teszt feladatok 2|teszt feladatok 2]] * [[teszt feladatok 3|teszt feladatok 3]] * [[teszt feladatok 4|teszt feladatok 4]] * [[teszt feladatok 5|teszt feladatok 5]] ==== Segédeszközök ===== * Online c fordító: https://www.programiz.com/c-programming/online-compiler/ * Online c fordító: https://www.onlinegdb.com/online_c_compiler * Online c fordító: https://repl.it * Online c fordító: https://cs50.dev * Portable CodeBlocks: {{ :muszaki_informatika:codeblocks.zip | Hordozható codeblocks }} * Codeblocks fejlesztőkörnyezetet innen lehet letölteni (otthon), ez tartalmazza a c fordítót is: [[https://sourceforge.net/projects/codeblocks/files/Binaries/20.03/Windows/codeblocks-20.03mingw-setup.exe/download|Codeblocks with MinGW]] * Android mobilapp - Tartalmaz C nyelvű oktatási anyagot is: https://play.google.com/store/apps/details?id=com.sololearn&hl=hu Extra: * ARM CPU szimulátor: https://cpulator.01xz.net/?sys=arm * ARM assembly tutorial: https://azeria-labs.com/writing-arm-assembly-part-1/ * Online compiler explorer itt lehet a kódok assembly változatát vizsgálni: https://godbolt.org/ ==== Korábbi Gyakorlatok ==== 1.) {{tanszek:oktatas:szamitastechnika:01_hardver_gyak.pdf|Hardver alapok}} 2.) [[Merevlemez és Mikroprocesszor]] 3.) [[Windows]] 4.) [[Power Point]] 5.) [[Excel 1]] - I. feladat kiadás {{tanszek:oktatas:szamitastechnika:excel_feladatok.pdf|Excel Féléves feladatok}} 6.) [[https://compaq.iit.uni-miskolc.hu/szamtech-teszt/|Számítógépes teszt]] 7.) [[Excel 2]] 8.) [[C - bevezetés]] - I. Excel feladat beadása 9.) [[Elágazások, ciklusok]] 10.) II. feladat kiadás: {{tanszek:oktatas:szamitastechnika:fuggvenytabla_feladat.pdf| Fügvénytábla feladatok}} 11.) [[Vektorok, algoritmusok]] 12.) [[További algoritmusok]] 13.) [[További algoritmusok II.]] - II. feladat beadása 14.) Pótlások.