Ágazati alapvizsga (Programozás)

 Első programozási gyakorlatok:

Programozási feladatok

  • Az Ön feladata az alábbiakban olvasható leírás alapján három program elkészítése.
  • A három Python-feladat elvégzésére összesen kb. 60 perc áll rendelkezésre.
  • A programokat a (megadott hely)-re kell mentenie.
  • A programok elkészítése során a felhasználó által megadott adatok helyességét nem kell ellenőriznie – ha például a program egy 1 és 5 közé eső szám megadását kéri a felhasználótól, akkor feltételezheti, hogy a felhasználó számot, és a megadott feltételeknek megfelelő számot ad meg.
  • Törekedjen arra, hogy a tanult programozási elveknek megfelelő adatszerkezeteket, vezérlési szerkezeteket alkalmazzon!
  • Munkáját rendszeresen mentse! Amennyiben a vizsga során a számítógép nem megfelelő működését tapasztalja, jelezze a felügyelő tanárnak!

Első feladat – 8 pont

Írjon programot nagyobb.py néven! A program kérjen be két számot a felhasználótól, majd írja ki, hogy melyik a nagyobb! A program üzeneteinek megfogalmazásában kövesse az alábbi példát! Azokat a részeket, amiket a felhasználó gépel be, a mintában vastagított és döntött betűkkel emeltük ki.

C:\Users\raerek\programok>nagyobb.py

Adj meg egy számot! 1

Adj meg egy másik számot! 17

A nagyobb érték 17

C:\Users\raerek\programok>nagyobb.py

Adj meg egy számot! 28

Adj meg egy másik számot! -2

A nagyobb érték: 28

C:\Users\raerek\programok>nagyobb.py

Adj meg egy számot! 999

Adj meg egy másik számot! 999

A két szám egyenlő

Pontozás – minden teljesülő feltétel egy-egy pontot ér

  1. Létrehoz programot nagyobb.py néven, a program hibaüzenet nélkül lefut.
  2. Bekéri a felhasználótól az egyik számot, és tárolja.
  3. A bekért számot szám típusúvá alakítja.
  4. Az előző két lépést a második számmal is elvégzi.
  5. Elágazást használ a különböző esetek kezelésére.
  6. Ha a két szám nem egyenlő, helyesen állapítja meg és írja ki, hogy melyik a nagyobb.
  7. Helyesen állapítja meg, és írja ki, ha a két szám egyenlő.
  8. A kiírt üzenetek helyesek (pl.: nincs benne elgépelés, helyesen jelennek meg a szóközök).

Második feladat – 14 pont

A program vizsgázók nevét és pontszámát kéri be. Eldönti és kiírja, hogy a vizsgázó sikeresen vizsgázott-e. A vizsga sikeres, ha legalább 48 pontot ért el a vizsgázó.

Írjon programot vizsga.py néven!

Kérje be a vizsgázók nevét és az elért pontszámokat! Írja meg azt a függvényt, ami eldönti, hogy a vizsga sikeres-e! A függvény paramétere a vizsgázó által elért pontszám, a visszatérési értéke logikai érték: igaz, ha a vizsga sikeres, hamis, ha sikertelen. Ezt a függvényt használja fel a programjában!

A program kérdezgesse addig újabb és újabb vizsgázó nevét és pontszámát, amíg a vizsgázó nevének megadásakor üres bemenetet nem kap! Ilyen akkor történik, ha a felhasználó egyszerűen Entert nyom, anélkül hogy bármit is begépelne.

A program üzeneteinek megfogalmazásában kövesse az alábbi példát! Azokat a részeket, amiket a felhasználó gépel be, a mintában vastagított és döntött betűkkel emeltük ki.

C:\Users\raerek\programok>vizsga.py

Add meg a vizsgázó nevét! Linus Torvalds

Add meg a pontszámát! 121

Linus Torvalds vizsgája sikeres.

Add meg a vizsgázó nevét! Dennis Ritchie              

Add meg a pontszámát! 119

Dennis Ritchie vizsgája sikeres.

Add meg a vizsgázó nevét! Steve Ballmer

Add meg a pontszámát! 27

Steve Ballmer vizsgája sikertelen.

Add meg a vizsgázó nevét!

C:\Users\raerek\programok>

Pontozás – minden teljesülő feltétel egy-egy pontot ér

  1. Létrehoz programot vizsga.py néven, a program hibaüzenet nélkül lefut.
  1. Bekér egy nevet és tárolja.
  2. Bekér egy pontszámot.
  3. Egy bekért számot szám típusúvá alakít.
  4. Egy pontszám alapján helyesen állapítja meg, hogy a vizsga sikeres-e vagy sem.
  5. Egy esetben helyesen jelenít meg üzenetet vizsga eredményességéről. Az üzenet a vizsgázó nevét is feltünteti.
  6. Ciklust szervez a nevek és a pontszámok bekérésére, illetve a vizsga sikerességének kiírására.
  7. A ciklus futása véget ér, ha a név megadásakor üres bemenetet kap a program.
  8. Függvényt hozott létre a vizsga sikerességének eldöntésére.
  9. A függvény paramétere a vizsga pontszáma.
  10. A függvényt helyesen hívja.
  11. A függvény visszatérési értéke alapján a főprogram (vagy az annak megfelelő függvény) írja ki a vizsga eredményességét.
  12. A függvényhívás a ciklusmagba kerül.
  13. A kiírt üzenetek helyesek (pl.: nincs benne elgépelés, helyesen jelennek meg a szóközök).

Harmadik feladat – 18 pont

Az elkészítendő program bekéri három híres nő nevét, foglalkozását, illetve nemzetiségét, amely angol vagy német lehet. Ezt a három adatot minden esetben egy-egy objektumban tárolja. Az adatok megadását követően a program a mintának megfelelően, a nemzetiségtől függően Ms. (angolok) vagy Frau (németek) előtaggal együtt kiírja az objektumokban tárolt neveket és foglalkozásokat.

a)      Írjon programot hiresek.py néven!

b)      Az adatok tárolására használt objektumok alapját képező osztályt a hiresek_alap.py fájl tartalmazza részben elkészítve. Egészítse ki az osztálydefiníciót úgy, hogy az objektumok alkalmasak legyenek a nemzetiség tárolására is!

c)      Bővítse az osztályt egy olyan tagfüggvénnyel, amely a tárolt nemzetiségtől függően „Ms.” vagy „Frau” értékkel tér vissza!

d)      Kérje be a felhasználótól az adatokat és tárolja őket! Az adatbekérést követően írja ki a megadott emberek nevének előtagját, a nevet és a foglalkozást!

A program üzeneteinek megfogalmazásában kövesse az alábbi példát! Azokat a részeket, amiket a felhasználó gépel be, a mintában vastagított és döntött betűkkel emeltük ki.

C:\Users\raerek\programok>hiresek.py

Add meg egy híres nő nevét! Katarina Witt

Add meg a foglalkozását! műkorcsolyázó

Add meg a nemzetiségét (a/n)! n

Add meg egy híres nő nevét! Ada Lovelace

Add meg a foglalkozását! informatikus

Add meg a nemzetiségét (a/n)! a

Add meg egy híres nő nevét! Diana Frances Spencer

Add meg a foglalkozását! hercegnő

Add meg a nemzetiségét (a/n)! a

Frau Katarina Witt egy híres műkorcsolyázó

Ms. Ada Lovelace egy híres informatikus

Ms. Diana Frances Spencer egy híres hercegnő

Pontozás – minden teljesülő feltétel egy-egy pontot ér

  1. Létrehoz programot hiresek.py néven, a program hibaüzenet nélkül lefut.
  2. Adatszerkezetet hoz létre a három HíresNő osztályú objektum tárolására.
  3. Bekéri egy nő nevét.
  4. Bekéri egy nő foglalkozását.
  5. A név és a foglalkozás felhasználásával HíresNő osztályú objektumot hoz létre.
  6. Egy HíresNő osztályú objektumot elhelyez a létrehozott adatszerkezetben.
  7. Három bekért név és foglalkozás alapján három objektumot hoz létre.
  8. Mindhárom objektumot elhelyezi az adatszerkezetben.
  9. Az adatszerkezetben tárolt objektumok alapján megjelenít egy objektumot a NÉV egy híres FOGLALKOZÁS formában.
  10. Mindhárom objektumot megjeleníti.
  11. Az osztály módosításával alkalmassá teszi az objektumokat a nemzetiség tárolásra.
  12. A módosítást úgy végzi el, hogy a nemzetiséget az objektum létrejöttekor kelljen megadni.
  13. Az osztályban előtag() néven tagfüggvényt hoz létre.
  14. Az előtag() tagfüggvény a tárolt nemzetiség alapján az angoloknál a Ms., németeknél a Frau értéket adja vissza.
  15. A program adatbekérő része a nemzetiséget is megkérdezi mindhárom esetben.
  16. A létrehozott objektumok tárolják a nemzetiséget.
  17. Az objektumok megjelenítésekor az előtag() tagfüggvény kimenetét helyesen használja, azaz az angol nemzetiségűek Ms. NÉV egy híres FOGLALKOZÁS, a németek Frau NÉV egy híres FOGLALKOZÁS formában íródnak ki.
  18. A kiírt üzenetek helyesek (pl.: nincs benne elgépelés, helyesen jelennek meg a szóközök).
Második programozási gyakorlatok:

A feladatok megoldása során vegye figyelembe a következőket:

1.      A képernyőre írást igénylő részfeladatok eredményének megjelenítése előtt írja a képernyőre a feladat sorszámát és címét (például: 2. feladat: Kisebb-nagyobb meghatározása)!

2.      Az egyes feladatokban a kiírásokat a minta szerint készítse el!

3.      A harmadik feladat megoldásakor az állományban lévő adatok helyes szerkezetét nem kell ellenőriznie, feltételezheti, hogy a rendelkezésre álló adatok a leírtaknak megfelelnek!

4.      A harmadik feladat megoldását úgy készítse el, hogy az azonos szerkezetű, de tetszőleges bemeneti adatok mellett is helyes eredményt adjon!

1. Kisebb-nagyobb meghatározása                                                                                  8 pont

Kérjen be a felhasználótól két egész számot és tárolja őket! Írja ki, hogy melyik a nagyobb és melyik a kisebb szám! Ha a két szám egyenlő, akkor azt is jelezze!


2. Szökőévek                                                                                                                     14 pont

Kérjen be a felhasználótól két évszámot és tárolja el! Határozza meg és írja ki a képernyőre az évszámok közötti szökőéveket! A vizsgált tartományba kerüljenek bele a felhasználótól bekért évszámok is! A szökőév meghatározásához készítsen saját függvényt! Szökőév minden 400-al osztható év, illetve a 4-el osztható, de 100-al nem osztható évek. Ha a megadott évszámok között nem található szökőév, akkor a "Nincs szökőév a megadott tartományban!" szöveget jelenítse meg!


             

3. Európa legmagasabb épületei                                                                                    18 pont

Az UTF-8 kódolású legmagasabb.txt állomány Európa legmagasabb épületeinek adatait tartalmazza a következő minta szerint (forrás: wikipedia.org):


Az épület nevét, városát és országát az épület magassága (méter, valós szám), az emeletek száma és az épület építésének éve követi. Az adatokat pontosvessző választja el.



3.1 Olvassa be az UTF-8 kódolású legmagasabb.txt állományban lévő adatokat és tárolja el egy saját osztály (Épület) típusú listában! Ügyeljen rá, hogy az állomány első sora az adatok fejlécét tartalmazza! A magasság érték tárolása (konvertálása) előtt cserélje le a szöveges típusú adatban a vesszőt pontra!

3.2 Határozza meg és írja ki a képernyőre, hogy hány épület található a forrásállományban!

3.3 Határozza meg és írja ki a képernyőre az állományba található épületek emeleteinek az összegét!

3.4 Határozza meg és írja ki a képernyőre a minta szerint, a legmagasabb épület adatait! Feltételezheti, hogy nem alakult ki holtverseny!

3.5 Döntse el, hogy az adatok között található-e olasz épület! A keresését ne folytassa, ha a választ meg tudja adni!


 





Megjegyzések

Népszerű bejegyzések ezen a blogon

Ágazati alap vizsga (WEB)

HTML + CSS (elmélet+gyakrolat)