Informatika2-2018/HF6

A MathWikiből
(Változatok közti eltérés)
6. sor: 6. sor:
 
* beolvas egy <tt>.csv</tt> fájlt
 
* beolvas egy <tt>.csv</tt> fájlt
 
* kiszedi belőle a '''NEPTUN''', '''ZH''' és '''potZH''' mezők adatait
 
* kiszedi belőle a '''NEPTUN''', '''ZH''' és '''potZH''' mezők adatait
 +
** érdemes a <tt>csv.DictReader</tt> osztályt használni, mert nem feltétlenül ugyanolyan sorrendben lesznek az oszlopok
 
* kiírja azon hallgatókat akik írtak egyáltalán pótZH-t
 
* kiírja azon hallgatókat akik írtak egyáltalán pótZH-t
 
** figyeljünk arra, hogy aki nem írta meg valamelyik ZH-t annak üres az a mezője.
 
** figyeljünk arra, hogy aki nem írta meg valamelyik ZH-t annak üres az a mezője.
15. sor: 16. sor:
  
 
== Argumentumok ==
 
== Argumentumok ==
A program használja az [https://docs.python.org/2/library/argparse.html argparse] modult a bemeneti ás kimeneti fájl nevének meghatározására.
+
A program használja az [https://docs.python.org/2/library/argparse.html argparse] modult a bemeneti és kimeneti fájl nevének meghatározására.
 
Az argumentumok legyenek:
 
Az argumentumok legyenek:
 
* <tt>-f</tt> vagy <tt>--file</tt> a bemeneti fájl
 
* <tt>-f</tt> vagy <tt>--file</tt> a bemeneti fájl
29. sor: 30. sor:
 
   -o OUTPUT, --output OUTPUT
 
   -o OUTPUT, --output OUTPUT
 
                         output file (default: output.csv)
 
                         output file (default: output.csv)
 +
 +
== Segítség ==
 +
Érdemes megnézni az [http://sandbox.hlt.bme.hu/~gaebor/ea_anyag/Info2/ ea_anyag/Info2/] mappában található <tt>extract_points_from_cc.py</tt> fájlt.
  
 
== Beadás==
 
== Beadás==

A lap 2018. április 16., 21:46-kori változata

Tartalomjegyzék

6. Házi

Program

Egy programot kell írni ami

  • beolvas egy .csv fájlt
  • kiszedi belőle a NEPTUN, ZH és potZH mezők adatait
    • érdemes a csv.DictReader osztályt használni, mert nem feltétlenül ugyanolyan sorrendben lesznek az oszlopok
  • kiírja azon hallgatókat akik írtak egyáltalán pótZH-t
    • figyeljünk arra, hogy aki nem írta meg valamelyik ZH-t annak üres az a mezője.
  • ezen hallgatókhoz kiszámítja a pótZH relatív teljesítménynövekedését az eredeti ZH-hoz képest.
    • ez a (pótZH-ZH)/ZH képlettel számolható
    • Ha az eredeti ZH 0 pontos vagy nem írt, akkor végtelen a teljesítménynövekedés: float("inf")
    • kivéve ha a pótZH is 0, mert akkor mindenképp 0, akármi is volt a sima ZH
  • Írja ki a program az említett adatokat egy másik fájlba, .csv formátumban, két oszlopban: NEPTUN és JAVUL mezőkkel, a NEPTUN kód szerint sorba rendezve.

Argumentumok

A program használja az argparse modult a bemeneti és kimeneti fájl nevének meghatározására. Az argumentumok legyenek:

  • -f vagy --file a bemeneti fájl
  • -o vagy --output a kimeneti fájl, default értéke "output.csv"
  • Legyen help menüje, ezt elvileg automatikusan megcsinálja az argparse modul. Például
> python T0_HF6_borbely.py --help
usage: T0_HF6_borbely.py [-h] [-f FILE] [-o OUTPUT]

optional arguments:
 -h, --help            show this help message and exit
 -f FILE, --file FILE  input file (default: E0.csv)
 -o OUTPUT, --output OUTPUT
                       output file (default: output.csv)

Segítség

Érdemes megnézni az ea_anyag/Info2/ mappában található extract_points_from_cc.py fájlt.

Beadás

Határidő: 2018-04-22 23:59

A teljes feladat 5 pontos, de lehet részpontot kapni. Ha nem megy valami akkor érdemes egyszerűsíteni a feladaton, hogy részpontra még legyen esély. De ha nem is fut le a program, akkor 0 pont.

A programot egyetlen python (.py) fájlmellékletként kell elküldeni a math-os címetekről a tavalyi címre:

  • info1hazi KUKAC gmail PONT com
  • a fájl neve a <tankör>_HF<a feladat száma>_<felhasználói név>.py formátumot kövesse. Például nekem ez lenne: T0_HF5_borbely.py
Személyes eszközök