E-Sport Kvalifikáció

Kategória: python - közép (előfizetőknek)

Feladat leírása

E-Sport Kvalifikáció illusztráció

Egy feltörekvő e-sportoló vagy, aki a népszerű "Kiber-Vívók" című játékban szeretne profi szintre lépni. A következő nagy online bajnokságra való kvalifikációhoz egy programot kell írnod, ami elemzi a felkészülési időszakod alatt nyújtott teljesítményedet. A programnak értékelnie kell a napi rangsorpontszámod (SR) változását, a lejátszott meccstípusokból származó stratégiai pontokat, és a támogatóidtól kapott "kreditek" beváltását.

Készíts programot az alábbi leírás szerint, amely modellezi és kiértékeli a teljesítményedet! A program forráskódját mentsd kvalifikacio néven!

A képernyőre írást igénylő feladatoknál az ékezetmentes kiírás is elfogadott. Ha egy feladatot nem tudsz megoldani, haladj tovább a következőre. Ha egy feladat eredményére szükséged van a továbbiakban, akkor add meg manuálisan a hiányzó értéket, és azzal dolgozz tovább!

Minta a szöveges kimenet kialakításához:

Hány napos a felkészülési időszak? 5
Mi a cél Skill Rating (SR)? 2800
Add meg a napi meccstípusokat egy szövegben (A: agilis, V: védekező, T: taktikai, K: kombó): AVTKK

1. nap végi SR: 2500
2. nap végi SR: 2650
3. nap végi SR: 2580
4. nap végi SR: 2810
5. nap végi SR: 2900

--- TELJESÍTMÉNY JELENTÉS ---

1. Cél Elérése:
A cél SR-t a 4. napon érted el.
A felkészülés során 1 alkalommal csökkent az SR-ed.

2. Stratégiai Elemzés:
A meccstípusokért kapott stratégiai pontszám: 44 pont.
Mivel minden stílusban játszottál, 10 bónuszpontot kapsz!
A végleges stratégiai pontszámod: 54 pont. Gratulálok, a kihívás teljesítve!

3. Energia Cella Feltöltés:
A fázisokban feldolgozott energia: 9 5 9 9 9 5 8 8 7
A feltöltéshez szükséges fázisok száma: 9

4. Végső Kvalifikáció:
A rendszerellenőrzés során 0 hiba történt.
A kvalifikációhoz szükséges pontszámot sajnos nem érted el.


Részfeladatok

  1. 1.

    Kérd be a felhasználótól, hogy hány napos a felkészülési időszak.

  2. 2.

    Kérd be, hogy mi a célként kitűzött Skill Rating (SR) pontszám. Ez egy lebegőpontos szám is lehet.

  3. 3.

    Kérd be egyetlen karaktersorozatban (szövegben) a napi meccstípusokat! A karakterek jelentése: A (agilis), V (védekező), T (taktikai), K (kombó). Például egy 5 napos időszakra: AVTKK.

  4. 4.

    Egy ciklus segítségével kérd be minden napra az aznapi SR-értéket!

  5. 5.

    A programnak meg kell jegyeznie, hogy a játékos SR-pontszáma hányszor csökkent az előző naphoz képest.

  6. 6.

    A programnak azt is figyelnie kell, hogy legkorábban melyik napon érte el vagy haladta meg a célként kitűzött SR-t. Ha egyszer elérte, a további napokon már nem kell ezt vizsgálni.

  7. 7.

    Az eredményt a minta szerint írd ki! Ha a játékos soha nem érte el a cél SR-t, akkor írd ki, hogy "Sajnos nem sikerült elérni a cél SR-t."

  8. 8.

    A program számolja ki a "stratégiai pontszámot" a megadott meccstípus-karaktersorozat alapján a következőképpen:

    • a)

      A: 1 pont

    • b)

      V: 1 pont

    • c)

      T: 2 pont

    • d)

      K: 10 pont

  9. 9.

    Ha a játékos a felkészülési időszak alatt legalább egyszer játszott mind a négy (A, V, T, K) stílusban, akkor kap 10 bónuszpontot.

  10. 10.

    Írd ki a szerzett pontszámot, a bónusz tényét, és a végső pontszámot!

  11. 11.

    Ha a végső pontszám eléri vagy meghaladja a 40-et, gratulálj a kihívás teljesítéséhez, egyébként írd ki, hogy "Legközelebb sikerül!".

  12. 12.

    A felkészülés során a támogatóidtól különböző méretű energia cellákat kapsz. A programod tartalmazzon egy beépített listát, ami ezeknek az energiaértékét tárolja: energia_cellak = [7, 2, 5, 8, 1, 9, 3, 6, 4, 1, 8, 3, 5, 7]

  13. 13.

    A felszerelésed egy speciális "töltőpufferrel" rendelkezik, ami egyszerre maximum 10 egységnyi energiát képes kezelni. Az energia cellákat egymás után kell a pufferbe juttatnod. Ha a következő cella már nem férne be a pufferbe anélkül, hogy túllépné a 10 egységes limitet, akkor a puffer kisül, és egy új "töltési fázis" kezdődik a soron következő cellával.

  14. 14.

    Számítsd ki, összesen hány töltési fázisra van szükség az összes cella energiájának feldolgozásához! Írd ki a képernyőre egy sorba, szóközzel elválasztva az egyes fázisokban feldolgozott összesített energia mennyiségét!

  15. 15.

    Vegyük a 3. feladatban kiszámolt (bónusz nélküli) stratégiai pontszámot. Ez a "kvalifikációs alap pontszám".

  16. 16.

    Szimulálj egy "rendszerellenőrzést"! Ha a kvalifikációs pontszám osztható 10-zel, az "rendszerhibát" okoz, és le kell vonni 3 pontot a pontszámból. Számold meg, a folyamat során ez hányszor történik meg! A kiinduló pontszámot addig vizsgáld és csökkentsd, amíg már nem osztható 10-zel. (Példa: ha a pontszám 30, akkor levonsz 3-at, az új pontszám 27 lesz. A hibák száma 1.)

  17. 17.

    Ha a végső, módosított pontszám eléri vagy meghaladja a 45-öt, akkor a játékos kvalifikálta magát. Írd ki az eredményt a minta szerint!