„A programozás alapjai” változatai közötti eltérés

Számonkérések: HF-ról és ZH-ról információ hozzáadás, majd a 2018-as feladatsorokat is fel tervezem tenni
NZH 2018 hozzáadása, tematika hozzáadása
61. sor: 61. sor:


== Tematika ==
== Tematika ==
TODO
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
TODO folytatás
 
== Segédanyagok ==
== Segédanyagok ==
TODO
TODO
103. sor: 120. sor:
=== ZH ===
=== ZH ===
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.
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.
==== NZH 2018.====
=====1. feladat - ProgAlap eredmények=====
:{| class="wikitable" align="right"
|-
| 1 || 3 || ***
|-
| 2 || 5 || *****
|-
| 3 || 7 || *******
|-
| 4 || 8 || ********
|-
| 5 || 6 || ******
|-
|colspan="3" | átment 26 fő
|}
:{| class="wikitable" align="right"
!Pont!!Jegy
|-
| 0 - 69 || 1
|-
|70 - 90 || 2
|-
|91 - 105 || 3
|-
|106 - 119 || 4
|-
|120 - 140 || 5
|}
Jobb oldalt a ProgAlap tárgy pontozási táblázatát látod: a félév végéig megszerezett pontokból kialakuló jegyet. Írj függvényt, amely a pontszámból jegyet csinál és használd is fel!
Egy olyan programot kell írnod, amelyik soronként beolvassa a hallgatók pontszámait, és statisztikát készít a jegyekről: hány jeles, hány jó, ... lett. A bemenet végét egy üres sor jelzi. A bementről érkező teljes számsort ne tárold el, keress alkalmas adatszerkezetet! A statisztikából kell a szintén jobb oldalt található formában grafikont készíteni: minden sorban a jegy, a létszám aztán annyi *, amennyi a létszám,. Írd ki azt is a grafikon alá, hogy hányan teljesítették a tárgyat!
=====2. feladat - Útiterv=====
Egy kamionsofőr autópályán vezet, 100 km/h-val haladva. A benzinkutak egymástól való távolságát előre ismeri a térképről. Minden másfél órányi vezetés után pihenőt kell tartania. Szeretne egy útitervet készíteni: előre eldönteni azt, hogy melyik benzinkúton kell majd pihennie. A szabály egyszerű: minden olyan benzinkútnál megáll, amelynél ha nem tartana pihenőt, a következő kúthoz már csak úgy érne el, ha túllépné a másfél órás egyfolytában vezetést.
Írj programot, amely soronként beolvassa az egyes benzinkutak közötti távolságot km-ben! Előbb megkapja a távolságok számát (n), magukat a távolságokat (valós számok, n darab). Végül pedig kiírja az útitervet. Például ha bemenetként a 45.3, 30.7, 64, 35, 72 számsort kapja (km-ek), akkor a kimenet az alábbi kell legyen:
:{| class="wikitable" align="center"
|-
| 45.3 km, 30.7 km, 64 km, szünet.
35 km, 72 km, vége.
|}
(Az első három táv összesen 140 km, amihez 1,4 óra kell. Ha megtette volna a következő 35 km-t, ahhoz már 1,75 óra kellett volna, ezért jött a szünet.)
=====3. feladat - Tizennégy betű, tizennégy osztó=====
Az 1245 szám szájegyeit betűkkel, magyarul kiírva összesen 3+5+4+2=14 betűt használunk fel: "egy kettő négy öt". Írj programot, amelyben megkeresed a legnagyobb négyjegyű számot, amely osztóinak száma 14 (beleértve saját magát és az 1-et is), és a számjegyeit leírva 14 betűt kell felhasználni! Írd ki, melyik ez a szám, vagy ha nincs ilyen, akkor azt!
Ne írj felesleges kódot! Használj fentről lefelé tervezést, írj a két részfeladathoz függvényeket (hány betű, osztók száma)! Emlékeztető: egy szám utolsó számjegyét eldobni tízzel való egész osztás segítségével tudod, míg magát az utolsó számjegyet a tízzel osztás maradéka adja meg.
=====4. feladat - Hiányos sorozat=====
A programod a bemenetén kap egy számsorozatot - egész addig, amíg egyszer csak egy üres sor nem érkezik. Ezeket el kell tárolnia egy listában. A számok egy növekvő számtani sorozatot alkotnak. A sor egy helyen hibás, valahol hiányzik egy eleme. Ezért valamelyik szomszédos elempár között kétszer akora a különbség, mint a többi helyen.
Írja ki a programod a beolvasás után a sorozat növekményét (differenciáját) és a kijavított sorozatot, megjelölve a hiányzó elemet! Pl. ha a bemenő számsor 2, 4, 6, 10, 12 voltak, a kimenet:
:{| class="wikitable" align="center"
|-
| A sorozat növekménye: 2
A sorozat javítva: 2 4 6 (8) 10 12
|}
Figyelj arra, hogy a megadott számsorozatnak legalább három eleműnek kell lennie, hogy értelmes legyen a feladat. Amennyiben ez nem teljesülne, dobj ValueError típusú kivételt!


Valamint 6 kis ZH, melyek az egyik előre kijelölt laboralkalmon kerülnek megírásra, nehézsége nagyjából egy nagy ZH-s feladattal egyezik meg, s 10 pont jár érte.
Valamint 6 kis ZH, melyek az egyik előre kijelölt laboralkalmon kerülnek megírásra, nehézsége nagyjából egy nagy ZH-s feladattal egyezik meg, s 10 pont jár érte.
A lap eredeti címe: „https://vik.wiki/A_programozás_alapjai