Table of Contents

Cvičení 1: Úvod do cvičení

Odevzdávací systém

Dotazník

* Prosím věnujte pár minut vyplnění dotazníku

Organizace cvičení

Počítačová laboratoř

Spuštění Pythonu

    2 + 3
    10 / 3
    a = 10
    a

Výrazy

Python jako kalkulačka

Proměnné

Výstup

print(1, 2, 3)
print("1 + 2 je", 1 + 2)
print("Hodnota promenne a je", a)

Program v jazyce Python

Vstup programu

import sys         # načtení modulu pro použití funkcí a proměnných modulu sys
a = int(sys.argv[1])
print("Zadana hodnota:")
print(a)

Výpočty v Pythonu

import sys
a = float(sys.argv[1])
b = float(sys.argv[2])
print(a+b)
print(a-b)
print(a*b)
print(a/b)

Cykly

Základní druhy cyklů

For cyklus

for proměnná in seznam:
  blok instrukcí

for k in range(1, 20, 1):
    print(k)

for i in "abcd":
  print(i)

for i in (1, 10, 2, 8):
  print(i)

for i in range(10):
  print(i)
  i = i -1
změna i v tomto případě, nemá vliv na provádění cyklu.

Výsledkem tohoto cyklu jsou mocniny dvojky:

for i in range(10):
  i = 2**i
  print(i)

Součet třetích mocnin, test odevzdávacího systému

Vstup:

4
Výstup:
100
100
Vstup:
12
Výstup:
6084
6084
Vstup:
5
Výstup:
225
225

Větvení programu

Pokud potřebujeme vykonat část programu jen při splnění určitých podmínek, použijeme příkaz if. Jeho nejdednodušší tvar je:

if podmínka:
   kód

V tomto případě se nejdříve vyhodnotí podmínka a je-li splněna, je vykonán příslušný kód. Pokud podmínka splněna není, kód se nevykoná.

Příklad: vytiskni “sudé číslo” pokud proměnná $a$ obsahuje sudé číslo.

if (a % 2) == 0:
   print("sude cislo")

Obecnější tvar větvení je

if podmínka1:
   kód1
elif podmínka2:
   kód1
else:
   kód2   

V tomto případě lze použít vícero bloků elif.

Příklad: pokud je v proměnné $a$ záporné číslo, vytiskni “zaporne”, jinak vypis jestli je číslo v proměnné $a$ liché nebo sudé.

a = 4
if a < 0:
    print("zaporne")
elif (a % 2) == 0:
    print("sude")
else:
    print("liche")

Bez elif bychom museli odsazovat tímto způsobem:

a = 4
if a < 0:
    print("zaporne")
else:
    if (a % 2) == 0:
        print("sude")
    else:
        print("liche")

Domácí práce

Domácí úkol

Lehká varianta

Těžká varianta

Více příkladů: Vstup programu je:

1 2 3 4 5 6
Výstup programu bude:
6 21
protože program cel8 posloupnost je podposloupností s největším součtem 21.

Vstup programu je:

-2 -1 -3 -4 -5 -6
Výstup programu bude:
1 -1
protože podposloupnost s největším součtem je podposloupnost s jedním prvkem -1.

Vstup programu je:

1 2 5 -10 8 -3 2 1 -1 2 -2 5 -16 8 -10 2 3
Výstup programu bude:
8 12
Protože podposloupnost 8 -3 2 1 -1 2 -2 5 má ze všech podposloupností největší součet 12.