„A programozás alapjai” változatai közötti eltérés
a →A vizsgaidőszakban: kiegészítés |
→Segédanyagok: anyagok feltöltése |
||
82. sor: | 82. sor: | ||
*2018 ősz | *2018 ősz | ||
**Előadás anyagok: | **Előadás anyagok: | ||
*** | ***1. hét: [https://infopy.eet.bme.hu/ea01/ bevezető] | ||
***2. hét: [https://infopy.eet.bme.hu/ea02/ nevezetes algoritmusok, sztringek, listák] | |||
***3. hét: elmaradt | |||
***4. hét: [https://infopy.eet.bme.hu/ea04/ vezérlési szerkezetek, kivételek, konverziók és formázás] | |||
***5. hét: [https://infopy.eet.bme.hu/ea05/ függvények, referenciák] | |||
***6. hét: [https://infopy.eet.bme.hu/ea06/ osztályok] | |||
***7. hét: [https://infopy.eet.bme.hu/ea07/ operátorok, számábrázolás] | |||
***8. hét: [https://infopy.eet.bme.hu/ea08/ rendezések, rekurzió] | |||
***9. hét: elmaradt | |||
***10. hét: [https://infopy.eet.bme.hu/ea10/ fájlkezelés, többmodulos programok] | |||
***11. hét: [https://infopy.eet.bme.hu/ea11/ láncolt listák, bináris fák] | |||
***12. hét: [https://infopy.eet.bme.hu/ea12/ összetett adatszerkezetek] | |||
***13. hét: [https://infopy.eet.bme.hu/ea13/ állapotgépek, reguláris kifejezések] | |||
***14. hét: [https://infopy.eet.bme.hu/ea14/ generikus algoritmusok, visszalépő keresés] | |||
**Labor anyagok: | **Labor anyagok: | ||
*** | ***1. hét: [https://infopy.eet.bme.hu/lab01/ operációs rendszer, egyszerű programok] | ||
***2. hét: [https://infopy.eet.bme.hu/lab02/ vezérlési szerkezetek, nyomkövetés] | |||
***3. hét: [https://infopy.eet.bme.hu/lab03/ nevezetes algoritmusok, listák, sztringek] | |||
***4. hét: [https://infopy.eet.bme.hu/lab04/ adatszerkezetek építése, karakterkódok kezelése] | |||
***5. hét: [https://infopy.eet.bme.hu/lab05/ kivételek, konverzió, számrendszerek] | |||
***6. hét: [https://infopy.eet.bme.hu/lab06/ függvények] | |||
***7. hét: [https://infopy.eet.bme.hu/lab07/ osztályok] | |||
***8. hét: [https://infopy.eet.bme.hu/lab08/ számábrázolás, számrendszerek] | |||
***9. hét: [https://infopy.eet.bme.hu/lab09/ rendezések, hash táblák] | |||
***10. hét: [https://infopy.eet.bme.hu/lab10/ rekurzió] | |||
***11. hét: [https://infopy.eet.bme.hu/lab11/ fájlkezelés] | |||
***12. hét: [https://infopy.eet.bme.hu/lab12/ bináris fák] | |||
***13. hét: [https://infopy.eet.bme.hu/lab13/ adatszerkezetek] | |||
***14. hét: [https://infopy.eet.bme.hu/lab14/ állapotgépek] | |||
**Feladat gyűjtemény: | |||
***1. hét: [https://infopy.eet.bme.hu/f01/ egyszerű programok] | |||
***2. hét: [https://infopy.eet.bme.hu/f02a/ logikai kifejezések, sorozatok, listák nélkül], [https://infopy.eet.bme.hu/f02a/ listák és sztringek] | |||
***3. hét: [https://infopy.eet.bme.hu/f03/ összetettebb listás feladatok] | |||
***4. hét: nincs | |||
***5. hét: [https://infopy.eet.bme.hu/f05/ függvények] | |||
***6. hét: [https://infopy.eet.bme.hu/f06/ osztályok] | |||
***7. hét: [https://infopy.eet.bme.hu/f07/ számábrázolás, bitműveletek] | |||
***8. hét: [https://infopy.eet.bme.hu/f08/ rendezések, rekurzió] | |||
***9. hét: nincs | |||
***10. hét: [https://infopy.eet.bme.hu/f10/ parancssori argumentumok, fájlkezelés] | |||
***11. hét: [https://infopy.eet.bme.hu/f11/ bináris fák] | |||
***12. hét: nincs | |||
***13. hét: [https://infopy.eet.bme.hu/f13/ állapotgépek] | |||
***14. hét: nincs | |||
**Segédanyag: | **Segédanyag: | ||
***[[:File:python3-puska.pdf | Python puska]] (ZH-n használható) | ***[[:File:python3-puska.pdf | Python puska]] (ZH-n használható) | ||
***[https://infopy.eet.bme.hu/fejlesztokornyezet/ Ingyenes fejlesztőkörnyezetek] | |||
***[https://infopy.eet.bme.hu/konyv/ Peter Wentworth, Jeffrey Elkner, Allen B. Downey és Chris Meyers: Hogyan gondolkozz úgy, mint egy informatikus] (könyv) | |||
***[https://infopy.eet.bme.hu/fajlkezeles/ Fájlkezelés, mappakezelés] | |||
***[https://infopy.eet.bme.hu/megjelenites/ Szöveges és grafikus megjelenítés] | |||
***[https://infopy.eet.bme.hu/pygame/ PyGame: multimédiás könyvtár] | |||
***[https://infopy.eet.bme.hu/pyconio/ PyConio: konzolos megjelenítés] | |||
**Extrák: | |||
***[https://infopy.eet.bme.hu/szorgalmik/ Szorgalmi feladatok] | |||
***[https://infopy.eet.bme.hu/nhfszepsegverseny2018/ NHF 2018 szépségverseny] | |||
***[https://infopy.eet.bme.hu/orak2018/ Óra 2018 szépségverseny] | |||
***[https://infopy.eet.bme.hu/turing/ Mit tud a számítógép?] | |||
***[https://infopy.eet.bme.hu/bf/ BrainFuck és Turing-gép] | |||
***[https://infopy.eet.bme.hu/karakterkodolas/ Karakterkódolások] | |||
***[https://infopy.eet.bme.hu/bitturmix/ Bitműveletek] | |||
***[https://infopy.eet.bme.hu/internet/ Internet működése] | |||
***[https://infopy.eet.bme.hu/osszefesulorendezes/ Összefésülő rendezés] | |||
***[https://infopy.eet.bme.hu/labirintus/ Labirintusok és algoritmusai] | |||
***[https://infopy.eet.bme.hu/fa/ Fák rajzolása és rekurzió] | |||
== Házi feladat == | == Házi feladat == |
A lap 2019. január 16., 12:56-kori változata
A tantárgy célkitűzése, hogy a hallgatók készség szinten alkalmazható ismereteket szerezzenek a számítógépes problémamegoldás módszereinek és alapvető eszközeinek használatában, úgy mint elemi és összetett adatok, programozási tételek, fájlkezelés. További cél, hogy a megszerzett ismereteket és készségeket további tanulmányaik során hatékonyan legyenek képesek alkalmazni. A célkitűzés teljesítését egy magas szintű programozási nyelv, a Python megismerése teszi lehetővé.
Követelmények
A szorgalmi időszakban
- Az aláírás megszerzésének feltételei:
- Az előadások legalább 70%-án való részvétel (Bár katalógus nincs).
- A laborok 70%-án való részvétel, csak a laborok elején írt beugró sikeres megírása esetén számít jelenlétnek.
- A kisZH-k sikeres megírása. A hat kisZH három témakört ölel fel, azaz három dolgozatpárost jelentenek. Minden pár közül a jobban sikerült eredménye számít, ez kell elérje az adott dolgozatra szerezhető pontszám 40%-át.
- A nagyZH sikeres megírása. A félév során egy nagy ZH van (2018-ban: 7. hét), mely 40 pontból áll és 4 feladatra oszlik, mely kódját papíron kell leírni.
- Pótlási lehetőségek:
- A kisZH-k közül egy pótlási díj ellenében póthéten pótolható/javítható.
- A nagyZH egyszer díjmentesen, utána a pótlási héten pótolható pluszköltséggel.
- A nagyHF a szorgalmi időszak utolsó napjáig 12:00-ig pótolható pluszköltséggel, a póthéten vagy utána már nem lehetséges.
A vizsgaidőszakban
- A vizsga írásbeli, a ZH utáni részek nagyobb súllyal szerepelnek benne.
Félévvégi jegy
- Aki a félévközi eredményekkel kiváló eredményt ért el, megajánlott jelest kap: max(KZH1, KZH2) + max(KZH3, KZH4) + max(KZH5, KZH6) + NZH + NHF + szorgalmi >= 80 pont.
- Vizsga esetén az érdemjegy meghatározásánál az alábbi pontszámokat vesszük figyelembe:
- 40 pont – vizsgadolgozat 2× súllyal (80 pont)
- 40 pont – nagy zárthelyi
- 20 pont – nagy házi feladat
- Ponthatárok:
Pont Jegy 0 - 69 1 70 - 90 2 91 - 105 3 106 - 119 4 120 - 140 5
- A nagy házi feladat részfeladatainak időben történő leadása beleszámít annak pontozásába. Extra pontokat lehet szerezni a félév közben beadott és elfogadott szorgalmi feladatokkal. A szorgalmi feladatok pontjai csak 80 pont fölött számítanak.
Tematika
Előadások és laborok összefésült témája:
- operációs rendszer, egyszerű programok
- vezérlési szerkezetek, nyomkövetés
- nevezetese algoritmusok, listák, sztringek
- adatszerkezetek építése, karakterkódok kezelése
- vezérlési szerkezetek, kivételek
- konverziók, formázás
- függvények, referenciák
- osztályok
- operátorok, számábrázolás
- rendezések, rekurzió, hash táblák
- fájlkezelés
- több modulos programok
- láncolt listák, bináris fák
- összetett adatszerkezetek
- állapotgépek, reguláris kifejezések
- generikus algoritmus
- visszalépő keresés
Segédanyagok
- 2018 ősz
- Előadás anyagok:
- 1. hét: bevezető
- 2. hét: nevezetes algoritmusok, sztringek, listák
- 3. hét: elmaradt
- 4. hét: vezérlési szerkezetek, kivételek, konverziók és formázás
- 5. hét: függvények, referenciák
- 6. hét: osztályok
- 7. hét: operátorok, számábrázolás
- 8. hét: rendezések, rekurzió
- 9. hét: elmaradt
- 10. hét: fájlkezelés, többmodulos programok
- 11. hét: láncolt listák, bináris fák
- 12. hét: összetett adatszerkezetek
- 13. hét: állapotgépek, reguláris kifejezések
- 14. hét: generikus algoritmusok, visszalépő keresés
- Labor anyagok:
- 1. hét: operációs rendszer, egyszerű programok
- 2. hét: vezérlési szerkezetek, nyomkövetés
- 3. hét: nevezetes algoritmusok, listák, sztringek
- 4. hét: adatszerkezetek építése, karakterkódok kezelése
- 5. hét: kivételek, konverzió, számrendszerek
- 6. hét: függvények
- 7. hét: osztályok
- 8. hét: számábrázolás, számrendszerek
- 9. hét: rendezések, hash táblák
- 10. hét: rekurzió
- 11. hét: fájlkezelés
- 12. hét: bináris fák
- 13. hét: adatszerkezetek
- 14. hét: állapotgépek
- Feladat gyűjtemény:
- 1. hét: egyszerű programok
- 2. hét: logikai kifejezések, sorozatok, listák nélkül, listák és sztringek
- 3. hét: összetettebb listás feladatok
- 4. hét: nincs
- 5. hét: függvények
- 6. hét: osztályok
- 7. hét: számábrázolás, bitműveletek
- 8. hét: rendezések, rekurzió
- 9. hét: nincs
- 10. hét: parancssori argumentumok, fájlkezelés
- 11. hét: bináris fák
- 12. hét: nincs
- 13. hét: állapotgépek
- 14. hét: nincs
- Segédanyag:
- Python puska (ZH-n használható)
- Ingyenes fejlesztőkörnyezetek
- Peter Wentworth, Jeffrey Elkner, Allen B. Downey és Chris Meyers: Hogyan gondolkozz úgy, mint egy informatikus (könyv)
- Fájlkezelés, mappakezelés
- Szöveges és grafikus megjelenítés
- PyGame: multimédiás könyvtár
- PyConio: konzolos megjelenítés
- Extrák:
- Előadás anyagok:
Házi feladat
A félév során egy nagy házi feladat van, melyen maximum 20 pontot lehet elérni. A beadáshoz 4 mérföldkő vezet:
- feladatválasztás (2018-ban: 7. hét vége),
- specifikáció (2018-ban: 8. hét vége),
- félkész megoldás (2018-ban: 10. hét vége),
- végleges program (2018-ban: 12. hét vége).
Amennyiben nem teljesült a beadás, díjköteles pótlehetőség van (2018-ban: szorgalmi időszak utolsó tanítási napja). Plágium büntetéshez vezet.
Pontozás
Maximálisan 20 pont érhető el az alábbiak szerint:
- Határidő betartás
- kiválasztás időben
- specifikáció elkészítése időben
- félkész házi beadása időben
- végleges házi beadása időben
- Kód minősége
- modulokra bontás
- funkcionális dekompozíció
- helyes erőforráskezelés
- helyes nyelvi elem használat
- elvárt kódolási stílus
- nincsenek újraimplementált szabványos függvények
- megfelelő adatszerkezetek, típusok
- szerep szerinti névadás
- +2 feladatfüggő pont
- Dokumentáció
- nincsen felfújva
- Programozói dokumentáció
- szükséges környezet leírása
- projekt felépítésének leírása
- adatszerkezet ismertetése
- függvények dokumentációja
- Felhasználói dokumentáció
- program feladata, célja, kezelése
ZH
- 2018 ősz
Kis ZH
- A félév során 6 alkalommal van kis zárthelyi az egyik előre kijelölt laborokon kerülnek megírásra.
- Nehézsége nagyjából egy nagy ZH-s feladattal egyezik meg. 10 pont jár érte.
- Egy kisZH három témakört ölel fel, azaz három dolgozatpárost jelentenek. Minden pár közül a jobban sikerült eredménye számít; ez kell elérje az adott dolgozatra szerezhető pontszám 40%-át. A meg nem írt dolgozatok pontszámát nulla pontot érnek.
Vizsga
- 2018 ősz
Tippek
- Programozást érdemes hétről hétre gyakorolni, nem bemagolni/betanulni a ZH/vizsga előtt. Próbáld meg felfogni egy kikapcsolódásnak, ahol csak szórakozol a kódsorokkal, próbálkozol, hátha sikerül összerakni, és nem rágörcsölni a tárgyra. De a legfontosabb, hogy rendszeresen gyakorolj!
Kedvcsináló
- Íme egy nagyszerű kis oldal python kezdő programozóknak https://www.pythonforbeginners.com. Have fun! :)
1. félév | |
---|---|
2. félév | |
3. félév | |
4. félév | |
5. félév | |
6. félév |