starkroman / python-012021

0 stars 0 forks source link

Úkoly - 1 #1

Closed starkroman closed 3 years ago

starkroman commented 3 years ago

Prosím o kontrolu všech pěti úloh. Díky

pesikj commented 3 years ago

Ahoj,

posílám hodnocení.

1. úkol :heavy_check_mark:

​ Super :-)

2. úkol :heavy_check_mark:

​ Super :-) ​

3. úkol :heavy_check_mark:

​ Super :-) ​

4. úkol :heavy_check_mark:

​ Super :-) ​

5. úkol

Pro knihy prodávané v obou letech to funguje správně, ale pokud je kniha prodávaná jen v roce 2020 (např. Past), tak program vrací hodnotu 0. Druhá podmínka je totiž uvnitř té první, i když by správně měla být mimo ni, jako je to níže. Je to jen drobnost, takže ti za ten příklad body zapíšu, ale prosím oprav si to. ​

pocetKnih = 0
nazevKnihy = input("Zadej název knihy: ")
if nazevKnihy in prodeje2019:
    pocetKnih += prodeje2019[nazevKnihy]
if nazevKnihy in prodeje2020:
    pocetKnih += prodeje2020[nazevKnihy]
print(f"Počet knih s názven \"{nazevKnihy}\" bylo prodáno celkem: {pocetKnih} ks.")

​ Celkem tedy 5 bodů :-) ​ Skvělá práce, jen tak dál 👍

starkroman commented 3 years ago

Díky za připomínku. Ano je to pravda. Otázka: Je tam ještě jeden problém, že ve slovníku Prodeje2020 jsou dva stejné klíče. Je to úmysl nebo se vloudila chybička. Mohou být vůbec ve slovníku 2 a více stejných klíčů?? Pokud to byl úmysl, tak můj program to nespočítá dobře.

pesikj commented 3 years ago

V zadání je chyba, ale teoreticky by nemusela být. Název knihy totiž nemusí být unikátní "identifikátor", např. by nakladatelství mohlo stejnou knihu vydat jako papírovou i elektronickou ve stejném roce a pak by evidovala dvakrát její prodeje. O tom si trochu více probereme, až budeme pracovat s indexy v pandas. Tam si třeba můžeš lépe zkontrolovat a ohlídat, jestli náhodou nemáš duplicitní záznamy v datech.

Každopádně tvůj program funguje správně a upravovat ho nemusíš.