A számítástechnika és a programozás alapjai egészségügyi mérnököknek

A tantárgy angol neve: Computer Technology and Programming for Biomedical Engineers

Adatlap utolsó módosítása: 2022. április 8.

Budapesti Műszaki és Gazdaságtudományi Egyetem
Villamosmérnöki és Informatikai Kar
Egészségügyi mérnök szak, MSc képzés
Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
VIIIM102   2/2/0/f 5  
3. A tantárgyfelelős személy és tanszék Dr. Szlávecz Ákos,
4. A tantárgy előadója
Dr. Szlávecz Ákos, egyetemi docens, BME Irányítástechnika és Informatika Tanszék
Dr. Benyó Balázs, egyetemi tanár, BME Irányítástechnika és Informatika Tanszék
6. Előtanulmányi rend
Kötelező:
Training.Code=("5N-MEU")
VAGY
Training.Code=("5N-MGAIN")

A fenti forma a Neptun sajátja, ezen technikai okokból nem változtattunk.

A kötelező előtanulmányi rend az adott szak honlapján és képzési programjában található.

7. A tantárgy célkitűzése

A tárgy célkitűzése, hogy az egészségügyi mérnöki képzés mérnöki előképzettséggel nem rendelkező hallgatóinak bevezetést adjon a számítógép programozás alapjaiba a Python programozási nyelv megismerésén keresztül.

A tárgy rövid bevezetést ad a számítástechnikai alapfogalmakba az alapszintű programozói ismeretek elsajátításához szükséges mértékben, és dióhéjban bemutatja a számítástechnika kínálta modern megoldásokat és lehetőségeket. A hallgatók a gyakorlati programozási készségeket egyszerű programok készítésével sajátítják el.

8. A tantárgy részletes tematikája
  • Számítógépek alapvető működési sémája és felépítése. A processzor belső működésének alapelvei. CPU felépítése, fő részei, utasítás végrehajtás lépései, pipeline működés. Processzorok utasításkészlete. Memória működése.

  • Számítógépes operációs rendszerek típusainak, alapvető működésének és felépítésének rövid áttekintése. Multiprogramozott rendszerek definíciója és működése. Operációs rendszerek szolgáltatásai feladatai és interfészei.

  • Szoftvertervezés és fejlesztés menete, lépései (specifikáció, implementáció, tesztelés, verifikáció, validáció), fejlesztési módszertanok.

  • Programozási nyelvek típusai. Interpreter és fordítóprogram. Különböző magas szintű programozási nyelveken készült forráskód előállításának és végrehajtásának menete. Programozási paradigmák, procedurális és deklaratív programozás.

  • Számábrázolás: bináris, hexadecimális számrendszerek. Bool algebra, bináris aritmetika. Egész számok: előjeles/előjel nélküli egész számok, 2-es komplemens ábrázolás. Lebegőpontos számok: IEEE754 szabvány által definiált lebegőpontos számok.

  • Változók létrehozása és használata. Egyszerű és összetett adattípusok: lista, tuple, dictionary. set. Műveletek összetett adattípusokkal.

  • Vezérlési szerkezetek a python programozási nyelvben: szekvencia, elágazás utasítások, ciklus utasítások.

  • Operátorok (precedencia, asszociativitás, polimorfizmus, konverziók), érték és mellékhatás, kiértékelési pontok, rövidzár tulajdonság.

  • Függvények és azok használata. Hierarchikus programozás, probléma dekompozíció, rekurzió.

  • A file-kezelés alapjai python környezetben.

  • Objektumorientált programozás alapjai. Egységbe zárás, osztály és objektum fogalma. Származtatás, öröklődés, láthatóság fogalma. Kivétel kezelés. Operátorok túlterhelése.

  • Python package-ek, saját package előállítása. Gyakran alkalmazott package-ek: numpy, scipy, ... és azok használata példákon keresztül.

  • Szoftverfejlesztés folyamatait segítő módszerek és eszközök. Fejlesztői környezetek, verzió kezelés, kódolási konvenciók.

10. Követelmények

A szorgalmi időszakban otthoni házi feladat és egy nagyzárthelyi. A félévközi jegy megszerzésének feltétele a házi feladat elfogadása és legalább elégséges nagyzárthelyi. A félévközi jegyet a nagyzárthelyi és a házi feladat eredménye alapján kapja a hallgató.

A vizsgaidőszakban: nincs.

11. Pótlási lehetőségek

A nagyzárthelyi a pótlási héten kiírt pót-zárthelyi teljesítésével pótolható, a házi feladat a pótlási héten különeljárási díj megfizetése mellett pótolható a házi feladat pótlási határidőre történő leadásával.

13. Jegyzet, tankönyv, felhasználható irodalom

Kóczy A, Kondorosi K (szerk.): Operációs rendszerek mérnöki megközelítésben. Budapest: PANEM, 2000. 489 p. (ISBN:9635452500)

Benyó B.: Számítógépek architektúrája. Egyetemi jegyzet, Széchenyi István Egyetem, 2007.

14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka
Kontakt óra56
Félévközi készülés órákra34
Felkészülés zárthelyire20
Házi feladat elkészítése20
Kijelölt írásos tananyag elsajátítása20
Vizsgafelkészülés-
Összesen150
15. A tantárgy tematikáját kidolgozta

Dr. Szlávecz Ákos, egyetemi docens, BME Irányítástechnika és Informatika Tanszék

Dr. Benyó Balázs, egyetemi tanár, BME Irányítástechnika és Informatika Tanszék