##### IB113 skupina 05 #####
##### cvičení 06


### SEZNAMY
# UKOL 1
S použitím pouze základních operací nad seznamy napište funkce, které zjistí:

součet všech čísel v seznamu - funkce my_sum(numbers),
nejvyšší číslo v seznamu - funkce my_max(numbers),
zda se určitá hodnota vyskytuje v seznamu - funkce my_in(x, array),

>>> print(my_sum([6, 5, 11, 8]))
30
>>> print(my_max([6, 5, 11, 8]))
11
>>> print(my_max([-10, -3, -5]))
-3
>>> print(my_in(5, [6, 5, 11, 8]))
True
>>> print(my_in(4, [6, 5, 11, 8]))
False

# UKOL 2
Napište funkci nonzero_product(numbers), která vypočítá součin čísel v seznamu, ale ignoruje přitom případné nuly.

>>> print(nonzero_product([0, 2, 3, 0, 0, 3]))
18
>>> print(nonzero_product([0, 0, 0, 0]))
1

# UKOL 3
Napište funkci reverse_list(), která otočí pořadí prvků v zadaném seznamu.

>>> print(reverse_list([1, 4, 2, 5]))
[5, 2, 4, 1]


# UKOL 4
Napište funkci only_odd(), která vrátí seznam pouze ze sudými čísly.

>>> print(reverse_list([1, 4, 2, 5]))
[2, 4]


# UKOL 5
Funkce word_length(words) spočítá ze zadaného seznamu délky jednotlivých slov.

>>> words = ["prase", "pes", "koza"]
>>> print(word_length(words))
[5, 3, 4]


# UKOL 6
Pomocí Eratosthenova síta vytvořte funkci count_primes(n), která spočítá počet prvnočísel menších jak n. Nepoužívejte žádný prvočíselný test.

>>> count_primes(100)



