Učíme sa Python – časť 8. Domáca úloha (Listy 2)

0

POZNÁMKA: Jedná sa o dlhšiu domácu úlohu, ktorú budeme dokončovať v ďalšej časti. Skús sa dostať čo najdalej!

POZNÁMKA: Prečítaj si najprv celé zadanie a potom sa zameraj na jednotlivé body. Body sú zoradené, čiže ich po prečítaní celého zadania môžeš postupne programovať. Na program si vytvor nový súbor, nech to je oddelené od všetkého a je to naozaj samostatný program.

Spravme si malý program, ktorý nazveme Zelovoc (alebo akýkoľvek iný obchod). Na konci minulej časti môžeš nájsť malé hinty ako na to. Obchod by mal spĺňať nasledovné požiadavky:

  • Produkt je iba obyčajný reťazec – slovo (napr. „jablko“).
  • Cena produktu, je dĺžka jeho názvu (napr. „jablko“ u nás stojí 6 jednotiek, „paradajka“ stojí 9 jednotiek).
  • Naše produkty potrebujeme niekde uložiť (napr. do listu).
  • Naše produkty chceme nejakým spôsobom ukázať používateľovi. Vypísať pri nich chceme ich poradie, názov a cenu produktu. Poradie nech nám začína od 1, nie od 0.
  • Po vypísaní produktov používateľovi chceme dať možnosť si nejaký produkt kúpiť. To môžeš spraviť tak, že si od neho vypýtaš číslo, ktoré bude označovať poradie produktu, ktorý si chce kúpiť.
  • Keď si používateľ kúpi produkt, tak ho niekam treba uložiť (napr. do listu, ktorý sa bude volať shoppingCart).
  • Po kúpe produktu chceme znova vypísať produkty a znova umožniť nákup (kedy program končí je popísané nižšie).
  • Naše produkty máme iba po jednom kuse. To znamená, že keď si používateľ kúpi produkt, tak už mu ho nemôžeš ponúkať znovu.
  • K vypisovaniu produktov pridaj aj vypísanie používateľovho košíka. Produkty v košíku stačí vypísať za sebou. Na koniec mu tam ešte napíš aktuálnu cenu košíka.
  • Ak používateľ pri voľbe produktu zadá číslo 0, tak to znamená, že si nákup želá ukončiť. Túto možnosť mu napíš pod zoznam produktov, nech vie, ako má nákup ukončiť.
  • Po ukončení nákupu mu napíš, aké produkty si kúpil a koľko za ne má zaplatiť.
  • Na záver sa mu nezabudni aj poďakovať.

BONUS 1

Ako bonus si môžeš kód trochu upraviť. Vo svete programátora nestačí, že kód funguje. Kód sa má dať aj dobre čítať a jednoducho upravovať.

  • Sprav si funkciu na výpočet ceny produktu, nech nemusíš vkuse volať len()
  • Sprav si funkciu na výpis všetkých produktov
  • Sprav si funkciu na výpis košíka
  • Sprav si funkciu na získanie produktu od používateľa

BONUS 2

Vylepši tvoj obchod tak, aby vedel mať viacero kusov daného produktu. Okrem listu products budeš potrebovať nový listquantities. Do tohto listu si uložíš koľko kusov daného produktu máš. Ako? Takto: Počet products[0] bude uložený v quantities[0]. Počet products[3] bude uložený na 3 indexe (4. pozícii) v liste. A tak ďalej. Keď si zákazník kúpi produkt, tak sa nezmaže z products, ale iba sa o 1 zníži daná pozícia v quantities. Ak je quantity daného produktu 0 (alebo menšia), tak ho samozrejme používateľovi neponúkame.

BONUS 3

Podobným spôsobom akým sa v BONUSE 2 robí počet produktov, skús upraviť cenu produktov. To znamená, že cena už nebude dĺžka mena produktu, ale bude určená a uložená v liste prices.


Pridaj komentár

Vaša e-mailová adresa nebude zverejnená.