Table of Contents

Dilema I

Hádanka

Typické dvouhráčové hry

Na přednášce byl prezentován problém vězňova dilematu. Přečtěte si pozorně zadání úlohy: Vězňovo dilema.

další čtení pro vaši inspiraci

Úkoly pro cvičení

For cykly

for přes indexy seznamu, po elementech, zjištění délky seznamu, prázdný seznam. Implementujte jednoduchou funkci find_max

def find_max(in_list):
    """
    find maximum value in a list or tuple
    :param in_list: a list or tuple of elements that allow < comparison
    :return: a tuple max_value, index of the max_value within the list
    """

Základní datové typy

základní datové typy: čísla, znaky, True, False, řetězce, platnost jednotlivých proměnných. Vylepšete funkci find_max tak, aby v případě, že vstupní seznam je prázdný vrátila hodnotu None. Vhodně otestujte.

přetížení operátorů

Implementujte jednoduchou třídu ComplexNumber, která si poradí s

if __name__ == "__main__":
    a = ComplexNumber(1,2)
    b = ComplexNumber(10,10) 
    size_of_a = a.size() # size of the complex number
    c = a+b # c must be also a ComplexNumber object, use __add__
    print(c.re,c.im) # just a simple check that the addition works
    print(c) # implement simple __str__ method

Neděste se, vyučující vám na cvičení ukáží jak na to.

Domácí úkol, příprava na příště

DÚ na příští týden - modul pro výpočet skalárního součinu 2 vektorů

Nazapomeňte na vlastní kontrolu kódu, nespoléhejte pouze na kontrolu UploadSystému. Třeba něco jako:

if __name__ == "__main__":
    vec1 = MyVector([1,2,3]) # vektory mohou byt i jine dimenze nez 3!
    vec2 = MyVector([3,4,5]) 
    print(vec1.get_vector()) # priklad ziskani seznamu
    dot_product = vec1*vec2  # vypocet, pretizeny operator *, vola se __mul__
    print(dot_product)       # jen kontrolni vytisk

Čtení

Přečtěte zbytek vašeho vybraného Python tutorial. V případě doporučeného jsou to kapitoly 3-9. Nemusíte úplně rozumět všemu, ani si pamatovat vše zpaměti. Měli byste mít natrénován postup jak si dohledat potřebné informace, mít natrénovanu práci s např. Python 3 tutoriálem, nebo jiným podobným zdrojem veškeré moudrosti ;-)

Interaktivní cvičení

Na codecademy pokračujte v interaktivním kurzu. Předpokládáme, že otázky, které jste měli po části kurzu z minulého týdne, jste položili na fóru nebo právě dnes na cvičení a že tudíž můžete pokračovat dál sekcemi:

Opět se pokuste dostat co nejdál. Stále platí, že tato cvičení vám mají především pomoci identifikovat věci, kterým nerozumíte. Pokládejte otázky na fóru nebo na cvičení!