Guruló Gofri

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

Feladat leírása

Guruló Gofri illusztráció

Képzeld el, hogy belevágsz egy saját vállalkozásba, és elindítod a "Guruló Gofri" nevű food truckodat! A célod, hogy egy hét alatt sikeresen üzemeltesd a büfékocsit: növeld a bevételedet és a hírnevedet. A hét minden napjára meg kell tervezned, hogy mit teszel: kinyitsz és árulsz (N), alapanyagot szerzel be (B), vagy a kocsi fejlesztésével és takarításával foglalkozol (T). A sikered a döntéseiden, a napi forgalmon és egy kis szerencsén is múlik.

Készíts programot az alábbi leírás szerint, amely modellezi a food truckod első hetét, és a végén kiértékeli a teljesítményedet! A program egy 7 karakteres karaktersorozat alapján szimulálja le a hetet, és számolja a pénz, a hírnév és az alapanyagok változását. A program forráskódját mentsd foodtruck néven!

A képernyőre írást igénylő feladatok esetén az ékezetmentes kiírás is elfogadott. Ha egy feladatot nem tudsz megoldani, akkor haladj tovább, és foglalkoztass a többi feladattal. Ha egy feladat eredményére szükséged van a továbbiakban, akkor add meg a hiányzó értékeket, és azzal dolgozz tovább!

Oldd meg a program segítségével a következő feladatokat!

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

Indul a 'Guruló Gofri'! Pénz: 20000 Ft, Hírnév: 20 pont, Alapanyag: 50 adag.
Add meg a 7 napos tervedet: NNBTTNN
1. nap (Nyitvatartás): 24 adag eladva. Bevétel: 21600 Ft. Új állás: 41600 Ft, 26 hírnév, 26 adag.
2. nap (Nyitvatartás): 26 adag eladva. Bevétel: 23400 Ft. Új állás: 65000 Ft, 33 hírnév, 0 adag.
3. nap (Beszerzés): -10000 Ft költség, +100 adag alapanyag. Új állás: 55000 Ft, 33 hírnév, 100 adag.
4. nap (Fejlesztés): -5000 Ft költség, +10 hírnév. Új állás: 50000 Ft, 43 hírnév, 100 adag.
5. nap (Fejlesztés): -5000 Ft költség, +10 hírnév. Új állás: 45000 Ft, 53 hírnév, 100 adag.
Különleges esemény: Egy food blogger írt rólad! Bónusz +25 hírnév, +10000 Ft, de a marketing költség -3000 Ft. Új állás: 52000 Ft, 78 hírnév, 100 adag.
6. nap (Nyitvatartás): 55 adag eladva. Bevétel: 49500 Ft. Új állás: 101500 Ft, 90 hírnév, 45 adag.
7. nap (Nyitvatartás): 41 adag eladva. Bevétel: 36900 Ft. Új állás: 138400 Ft, 100 hírnév, 4 adag.

--- Heti értékelés ---
A hét legforgalmasabb napja a 6. volt, 12-es forgalmi szorzóval.
Kimagaslóan forgalmas hét volt, jutalmad 10000 Ft extra profit!
Működési napló: 4 nyitvatartás, 1 beszerzés, 2 fejlesztés.
Jól menedzselt hét, profi munka! Jutalmad +20 hírnév.
Végső állás: 148400 Ft, 120 hírnév, 4 adag.
Nettó változás: HHHHHHHHHHPPPPPPPPPPPPPPPPPPPPP
Gratulálok, te lettél a város új Gasztro Hőse!


Részfeladatok

  1. 1. Hozz létre változókat a pénz (penz), a hírnév (hirnev), az alapanyag (alapanyag), valamint a napi akciók (N, B, T) megszámlálására. A kezdőértékek legyenek penz = 20000, hirnev = 20, alapanyag = 50. A számlálók 0-ról induljanak.

  2. 2.

    Hozd létre a napi_forgalom = [6, 7, 5, 8, 10, 12, 9] listát, ami a hét napjainak forgalmasságát mutatja.

  3. 3.

    Írasd ki a mintának megfelelő üdvözlő üzenetet a kezdőértékekkel!

  4. 4.

    Kérd be a felhasználótól a 7 napos tervet tartalmazó karaktersorozatot!

  5. 5.

    Írj egy ciklust, amely végigmegy a bekért karaktersorozat minden karakterén (a 7 napon)!

  6. 6.

    A cikluson belül vizsgáld meg az aktuális napi akciót (N, B vagy T), és a leírásnak megfelelően módosítsd a változókat!

    • a) N (Nyitvatartás): Az eladott adagok száma napi_forgalom[nap_indexe] * random.randint(2, 5). Ha nincs elég alapanyag, annyit adsz el, amennyi van. A bevétel eladott_adag * 900 Ft. A hírnév eladott_adag // 4 ponttal nő. Az alapanyag csökken az eladott adaggal.

    • b) B (Beszerzés): A pénz csökken 10000 Ft-tal, az alapanyag nő 100 adaggal.

    • c) T (Fejlesztés/Takarítás): A pénz csökken 5000 Ft-tal, a hírnév nő 10 ponttal.

  7. 7. Minden nap növeld a megfelelő akció-számlálót (N, B vagy T)!

  8. 8. Figyelj arra, hogy a program futtatása során ne mindig ugyanazt a véletlenszám-sorozatot kapd! (random modul)

  9. 9.

    Minden nap végén (a ciklusmag végén) írasd ki a mintának megfelelően az aznapi eseményeket és az új penz, hirnev, alapanyag állást!

  10. 10.

    Szintén minden nap végén vizsgáld meg, hogy a hirnev pontszámod átlépett-e egy 50-es határt (pl. 48-ról 53-ra nőtt). Ha igen, egy food blogger írt rólad! Adj 25-öt a hírnévhez, 10000-et a pénzhez, de vonj le 3000 Ft marketing költséget. Írasd ki a "Különleges esemény"-t!

  11. 11.

    Írj egy elválasztót és a "Heti értékelés" címet!

  12. 12.

    Keresd meg és írasd ki a napi_forgalom lista legnagyobb elemét és annak sorszámát (a hét napját)!

  13. 13.

    Add össze a napi_forgalom lista elemeit! Ha az összeg nagyobb mint 55, adj 10000-et a penz változóhoz, és írasd ki a "kimagaslóan forgalmas hét" miatti bónuszról szóló üzenetet!

  14. 14.

    Írasd ki a megszámlált akciók (N, B, T) számát a mintának megfelelően!

  15. 15.

    Vizsgáld meg, hogy volt-e legalább 4 nyitvatartási nap (N), legalább 1 beszerzési nap (B) és legalább 1 fejlesztési nap (T)! Ha igen, adj 20-at a hírnévhez, és írasd ki a "Jól menedzselt hét" jutalmát!

  16. 16.

    Írasd ki a végső penz, hirnev és alapanyag értékét!

  17. 17.

    Számítsd ki a nettó változást a kezdőállapothoz képest! Írasd ki a "Nettó változás" eredményét: minden 10 pont hírnévnövekedésért egy H betűt, minden 5000 Ft pénznövekedésért egy P betűt írj ki!

  18. 18.

    Végül, ha a hirnev > 100 és a penz > 50000, írasd ki: "Gratulálok, te lettél a város új Gasztro Hőse!", egyébként pedig: "A gofri kicsit odaégett, de jövő héten újra próbálhatod!"