Autor: administrator

Podmínky if elif else

Z minulého dílu víme, co jsou to datové typy a nyní je na čase se naučit podmínky. Vykonání podmínky zapisujeme příkazem if. To v angličtině znamená když.

Podmínkou if se můžeme programu zeptat zda nějaká hodnota platí a pokud platí, tak se spustí blok kódu pod If  a pokud neplatí pomocí else se vykoná blok kódu, který je pod else.

Uvedeme si příklad pro podmínku if, který můžeme naprogramovat. Máme atrakci a vstup na atrakci je povolen pouze pokud máš více než 120 cm. Proto napíšeme program, který se tě zeptá kolik měříš centimetrů.

Když(if) je tvoje výška větší než 120 cm můžeš vstoupit na atrakci a pokud(else) je menší než 120 cm nemůžeš vstoupit na atrakci. 

Pojďme se podívat jak takovou podmínku zapsat. 

print("Vítej na horské dráze!")
vyska = int(input("Kolik měříš centimetrů? "))
if vyska > 120:
  print("Můžeš jít na horskou dráhu. Užij si jízdu! ")
else:
  print("Promiň, ale jsi moc malý na tuto jízdu. ")

Zkuste si spustit první příklad s podmínkou If a ukážeme si další příklad. V tomto příkladu budeme potřebovat operátor modulo, který jsme se naučili v prvním díle.

Pro připomenutí pro operátor modulo používáme znak % a tento operátor nám poskytne zbytek z dělení.

Pro tyto programy se hodí si udělat diagram a předem si rozmyslet, jak bude program vypadat a fungovat. 

Napíšeme si program, do kterého zadáme číslo, a program nám řekne zda je číslo sudé a nebo liché. 

print("Ahoj, zadej číslo a já ti řeknu zda je sudé a nebo liché")
cislo = int(input("Které číslo chceš zkontrolovat? "))


modulo_cislo = cislo % 2

if modulo_cislo == 0:
  print("Zadal jsi sudé číslo")
else: 
  modulo_cislo == 1
  print("Zadal jsi liché číslo")

Pojďmě se podívat na program, který máme napsaný pro zjištění, jestli je číslo sudé a nebo liché.

Na druhé řádce máme kód, který se zeptá uživatele na číslo a uloží číslo, které uživatel zadal do proměnné cislo.

Do proměnné modulo_cislo uložíme zbytek z dělení čísla, které nám uživatel zadal do proměnné cislo. Číslo, které nám uživatel zadal vydělíme 2. Toto máme na pátém řádku. Pokud je číslo sudé zbytek z dělení bude 0 a pokud bude číslo liché bude zbytek dělení 1.

Na konci programu máme naší podmínku když (if ) modulo_cislo (zbytek z dělení) se rovná 0 vypíše se text zadal jsi sudé číslo.

Pokud (else) se modulo_cislo (zbytek z dělení) se rovná 1 vypíše se text zadal jsi liché číslo.

Vnoření funkcí

Funkce můžeme do sebe vnořovat. Pojďme se vrátit k našemu příkladu s horskou dráhou a pojďme k výšce se zeptat ještě na věk a podle věku určit cenu za jízdu na horské dráze. 

 

print("Vítej na horské dráze!")
vyska = int(input("Kolik měříš centimetrů? "))
if vyska >= 120:
  print("Můžeš jít na horskou dráhu. Užij si jízdu!")
  vek = int(input("Kolik ti je let?"))
  if vek > 18:
    print("Cena je 50 korun")
  else:
    print("cena je 25 korun") 
else:
  print("Promiň, ale jsi moc malý na tuto jízdu.")

Vytvořili jsme program a nyní ho pojďme zkusit spustit. Pokud zadáme výšku menší než 120 centimetrů vykoná se blok kódu označený červenou šipkou na obrázku a přeskočí se blok kódu pod první podmínkou if a vykoná se blok pod else, které je k prvnímu if (na obrázku označené červenou šipkou).

Proto je v Pythonu extrémně důležité odsazování, pokud bychom kód odsadili do jiného bloku, program by nefungoval a nebo by fungoval špatně.

Když uživatel zadá hodnotu větší a nebo rovno 120 cm vykoná se blok kódu pod prvním if. Program se nás v tomto bloku zeptá na věk a uloží hodnotu do proměnné vek. Následně se vykoná vnořená podmínka if.

Když (if) věk je více jak osmnáct let cena je 50 korun pokud (else) se stane něco jiného, což v našem případě znamená, že věk je menší než 18 let cena je 25 korun.

elif

If a else jsou zcela jistě velký pomocník při programování, ale můžeme takto zadat pouze dvě podmínky. Proto můžeme podmínku rozvětvit pomocí elif.  Podmínky se používají v konstrukci if/elif/else. Podmínek elif můžeme použít v programu kolik chceme např. if/elif/elif/elif/else.

Pojďme se vrátit k našemu příkladu s horskou dráhou a přidáme další cenu. První cena bude 15 korun pro děti mladší 12 let. Druhá cena 25 korun bude pro děti od 12 do 18 let, pro starší 18 let bude cena 50 korun 

Zde je opět diagram našeho programu.

print("Vítej na horské dráze!")
vyska = int(input("Kolik měříš centimetrů? "))
if vyska >= 120:
  print("Můžeš jít na horskou dráhu. Užij si jízdu!")
  vek = int(input("Kolik ti je let?"))
  if vek < 12:
    print("Cena je 15 korun")
  elif vek <= 18:
    print("Cena je 25 korun")
  else:
    print("Cena je 50 korun") 
else:
  print("Promiň, ale jsi moc malý na tuto jízdu.")

Při tvoření podmínek je nutné dát veliký pozor na pořadí v jakém se nám podmínky splní. Pokud bychom zadali první podmínku s osmnáctiletými a druhou podmínku pro děti do 12 let, program by nefungoval správně, protože by 12 leté děti byly splněni v podmínce pro osmnáctileté.

Úkoly

Úkol číslo 1

Vzpomínáš si na úkol s výpočtem BMI ? V tomto úkole si vylepšíš program na výpočet BMI.

Napiš rozšíření programu, které podle výsledku čísla BMI napíše, jak na tom jsi.

  • Když bude BMI menší než 18 program napíše máš pod váhu
  • Pokud bude BMI 18 -22 program napíše máš normální váhu
  • Pokud bude BMI 22 – 28 program napíše máš trochu nadváhu 
  • Pokud bude BMI 28 – 33 program napíše jsi obézní 
  • Pokud bude BMI větší než 33 program napíše jsi fakt tlustý
# ? Neměň tento kód  ?
vyska = float(input("Zadej svojí výšku v m: "))
vaha = float(input("Zadej svoji váhu v kilogramech: "))
# ? Neměň tento kód ?

#Odsud dolů piš svůj kód?

Úkol číslo 2

Rok má 365 dní ovšem každé 4 roky má rok 366 dní.

Toto pravidlo má ale své výjimky. Pokud rok je celé století, tak přestupný rok není, ale jednou za 400 let je i v celém století přestupný rok.

To znamená rok:

  • 4 přestupný rok
  • 8 přestupný rok
  • 100 není přestupný rok
  • 104 je přestupný rok
  • 200 není přestupný rok
  • 400 je přestupný rok
  • 2000 je přestupný rok
  • 2100 nebude přestupný rok
  • 2400 bude přestupný rok

Napiš program, do kterého zadáš letopočet a program ti řekne, zda je nebo není přestupný rok. Nápověda: použij modulo.

# ? Neměň tento kód ?
rok = int(input("Zadej rok, který chceš zjistit zda je přestupný: "))
# ? Neměň tento kód ?

#Odsud dolů piš svůj kód?

Těžký úkol

úkol číslo 3

Nakresli diagram k programu a naprogramuj program na objednávku pizzy. Uživatel si objedná pizzu a má na výběr z několika možností.

  • malá pizza 100 Kč
  • střední pizza 125 kč
  • velká pizza 150 kč

K pize jdou přiobjednat pepperony 

  • malá pizza + pepperony 15 Kč 
  • střední pizza + pepperony 25 Kč 
  • velká pizza + pepperony 25 Kč 

Dále můžeš přiobjednat extra sýr který má pro všechny pizzy stejnou cenu 10 Kč

Program nechá uživatele vybrat jak velkou chce pizzu zda chce pepperony  zda chce sýr a spočítá konečnou cenu pizzy.

Datové typy

V minulém díle jsme se naučily funkci input, která nám umožní, aby uživatel zadal text, číslo nebo nějaké hodnoty a my s nimi dále pracovaly v programu.  Ukládaly je do proměnných, prováděly různé výpočty nebo je vkládaly do textu a mnoho dalších operací.

Problém ovšem nastává, když nám uživatel například zadá číslo a my sním potřebujeme pracovat jako s textem. K vyřešení těchto problémů slouží datové tipy a my se podíváme jaké datové tipy existují a jak je používat. Dále přidáme do dnešní lekce funkci len( ), na kterou se podíváme jako první.

Funkce len 

Funkce len nám dokáže změřit počet znaků v řetězci. To znamená, že pokud mám nějaké slovo např. jméno Pavel, tato funkce změří kolik je v tomto jméně znaků. P = 1 A = 2 V = 3 E = 4 L = 5 funkce nám dá hodnotu 5 jelikož ve jméně Pavel je 5 znaků.

Pojďme si ukázat příklad jak funkce len ( ) vypadá

print(len("text"))
print(len("text "))

Vyzkoušejte si kód spustit a uvidíte výsledek 4 a 5. To je z toho důvodu, že ve spodním řádku máme v textu mezeru a funkce len () nám spočítá i v textu i mezery.

Pojďme zkombinovat funkci len s tím co už známe. Protože umíme si říct o data od uživatele a umíme je zapsat do proměnné a zobrazit, tak si můžeme napsat program, který se nás zeptá na to jak se jmenujeme a řekne nám jak dlouhé je naše jméno.

#funkce len měří kolik má znaků můj řetězec 
print(len("text"))    # slovo text má 4 znaky proto výstup bude 4 
print(len("text "))    #pokud přidám v textu mezeru výstup bude 5, prtože to započítá i mezeru

print(len(input("Zadejte své jméno: "))) #tři funkce v jednom řádku 

name = input("Jak se jmenuješ?: ")
delka = len(name)
print(delka)

Funkci len máme zvládnutou a nyní se můžeme podívat na datové tipy . Ty v Pythonu rozeznáváme 4.

  • String
  • Integer
  • Float 
  • Boolean
#Datové typy

#String 

print("123" + "123")

#integer

print( 123 + 123)



#float

print(3.14159)

#boolean 
True
False

String  datový typ string je typ, ve kterém máme nějaký text. Pokud sečtu tyto dva typy, které vidíte v příkladu, nahoře dostanu výsledek 123123

Integer Integer je datový typ, ve kterém máme nějaké číslo. Pokud tyto typy sečtu jako v příkladu nahoře, dostanu výsledek 246

Float datový typ float je podobný, jako datový typ Integer, akorát se používá pro desetinná čísla.

Boolean je datový typ, který nám uchovává dvě hodnoty True a nebo False, pravda nebo nepravda. Lze si to představit jako žárovku buď je rozsvícená a nebo zhasnutá. Hodnoty můžeme mezi sebou porovnávat a k tomu potřebujeme porovnávací operátory. 

Rovnost==
Je větší>
Je menší<
Je větší nebo rovno>=
Je menší nebo rovno<=
Není rovno !=
x = 5
y = 8

print("x == y:", x == y)
print("x != y:", x != y)
print("x < y:", x < y)
print("x > y:", x > y)
print("x <= y:", x <= y)
print("x >= y:", x >= y)

Zkuste spustit tento kód a podívejte se na výsledek. Ve funkci print se nám text v uvozovkách vypíše jako text, a kód za čárkou x  == y se nám bude porovnávat a vypíší se nám výsledky pravda nepravda.

str( )

Občas potřebujeme pracovat s číslem jako s textem a zase číslo, které je zapsané jako text, tak potřebujeme použít jako číslo. To uděláme změnou datového typu.

Funkce string, kterou v kódu zapisujeme str( ) převede číslo na text

x = 12 # V proměné x máme uloženou hodnotu 12 

print(x * 2) # Vypíše se nám kolik je 12 * 2, takže výstup bude 24 

promenna_x = str(x) # string hodnoty x můžu uložit do další proměné x bude pořád číslo, ale promena_x bude text

print(2 * promenna_x) # Vypíše se nám za sebou dvakrát číslo 12 protože v hodnotě promena_x je 12 text takže výstup bude 1212

Na začátku programu máme hodnotu x, která je 12. první řádek nám vynásobí 2 * 12 a výsledek bude 24.

Ve třetím řádku převedme hodnotu x na text a uložíme do proměnné promenna_x. Poslední řádek nám dvakrát vypíše text 12, tak výsledek bude 1212.

V datovém typu string můžeme jednoduše zjistit na které pozici se nachází jaký znak. Pojďme se podívat, jak to zjistíme. 

print("Ahoj"[0])
print("Ahoj"[1])
print("Ahoj"[2])
print("Ahoj"[3])

Pokud jste si kód zkusili spustit, pak víte, že výsledek vypadá takto.

  • A – je na pozici 0
  • H – je na pozici 1
  • O – je na pozici 2
  • J – je na pozici 3

Při zjišťování toho, jaký znak se nachází na které pozici je třeba dávat pozor na to, že Python počítá od nuly a ne od jedničky. Proto na pozici 0 je A a na pozici 1 je H.

int( )

Teď to zkusíme obráceně převedeme text na číslo pomocí funkce int( ).

x = str(input("Zadej cislo"))

print(x * 2)

int_x = int(x)

print(int_x * 2)

Vyzkoušejte jak text funguje a vysvětlíme si, jak funguje převod textu na číslo.

x = str(input("Zadej cislo"))

print(x * 2)

int_x = int(x)

print(int_x * 2)

Když už známe vnořené funkce, můžeme si do funkce string str() vnořit input, který nám umožní uložit do proměnné x hodnotu, kterou uživatel zadal a zároveň funkce str() tuto hodnotu převede na text.

To znamená, že když nám uživatel zadá číslo, tak my s ním můžeme pracovat pouze jako s textem. To při spuštění programu můžete vidět ve druhém řádku. Pokud zadáte hodnotu 15 Python vypíše 2x text 15 a výstup vypadá 1515

Pro provádění matematických operací potřebujeme x převést na číslo. To uděláme ve třetím řádku funkcí int( ), kde převedeme text na číslo. 

Čtvrtý řádek nám vypíše 2x proměnnou int_x, do které jsme uložili text jako číslo, proto výstup bude 30.

Cvičení

Příklad číslo 1

Napiš program, který se tě zeptá na tvé jméno a příjmení a na konci ti napíše, kolik znaků má tvé jméno a kolik znaků má tvé příjmení.

Program by mohl vypadat takto: 

Ahoj, zadej mi prosím tvé jméno

Zadej prosím  tvé příjmení:

Tvé jméno je dlouhé 5 znaků a tvé příjmení je dlouhé 8 zanků.

Příklad číslo 2

Napiš program, do kterého zadáš dvojciferné číslo například číslo 59. Program sečte na konci obě čísla a vypíše výsledek. V případě čísla 59 bude program sčítat  5 + 9 = 14 

# ? Tento kód neměň ?
dvouciferne_cislo = input("Zadej dvouciferne číslo: ")
# ? Tento kód neměň ?

####################################

#Sem piš svůj kód ?

Příklad číslo 3

Naprogramuj jednoduchý BMI kalkulátor, který se tě zeptá na tvoji výšku, na tvoji váhu a následně spočítá tvé BMI a na konec ho vypíše. BMI vypočítáš pomocí tohoto vzorečku:

 

# ? Don't change the code below ?
vyska = input("Zadej svoji výšku v metrech: ")
vaha = input("Zadej svoji váhu v kilogramech: ")
# ? Don't change the code above ?

#Write your code below this line ?

BMI podle vzorečku: 80 kilový člověk měřící 180 centimetrů bude počítat své BMI takto 80 / 1.8 * 1.8

Protože BMI, které vypočítáš podle vzorečku bude mít s největší pravděpodobností mnoho desetinných čísel ukážeme si na závěr jak zaokrouhlovat.

Zaokrouhlovat můžeš pomocí funkce round( ) 

Ukážu ti, jak funkci round( ) použít a zkus ji použít i ve svém úkolu.

print(round(8/3))   #zaokrouhlení bez desetinného místa
print(round(8/3,2)) #zaokrouhlení na dve desetinná místa
print(round(8/3,3)) #zaokrouhlení na tři desetinná místa

proměnné a funkce input

V minulém díle jsme se naučily funkci print, která nám vypisuje text, zároveň jsem na konec dílu vytvořil 4 příklady pro procvičení funkce print. Dneska si vysvětlíme co jsou to proměnné a naučíme se funkci print, která nám umožní pracovat s tím co nám zadá uživatel.

Nejdříve si vysvětlíme co jsou to proměnné. Proměnné jsou odkazy na objekty. Proměnná nám uchovává nějakou hodnotu určitého datovéhotypu – (datové tipy si ukážeme v další části kurzu.)

Abychom si představili co to ta proměná vlastně je a jak vypadá, tak si to rovnou ukážeme na praktickém příkladě. 

hodnota = 2
print(hodnota)

Vyzkoušejte si spustit tento kód a uvidíte, že výstup z tohoto programu je 2. Dvojka se nám uložila do proměnné hodnota a tu následně můžeme použít v pozdější části programu.

Proměnné můžeme pojmenovávat různě, ale je dobré dávat proměnným taková jména, aby když se vrátíme k programu za půl roku, aby jsme programu rozuměly a z proměnné vyčetli k čemu slouží.

Nyní si zkusíme napsat složitější program. 

#Část kódu, kde máme uložené proměnné?
jmeno = "Pavel"
prijmeni = "Pokorný"
vek = "28" 
bydliste= "Praha"
#Konec kódu s proměnnýma?
#Část kódu, Která nám vypíše náš text a proměnné?
print("Ahoj jmenuji se" + jmeno + " " + prijmeni + "a jsem starý " + vek + " let" )
print("Celých " + vek + " bydlím ve městě, kde jsem se narodil a to je " + bydliste )

Pokud Program spustíte, uvidíte, že se nám naše hodnoty vypisují hned vedle textu, který jsme zadaly bez mezer, proto bude potřeba kód ještě trochu upravit. 

#Část kódu, kde máme uložené proměnné?
jmeno = "Pavel"
prijmeni = "Pokorný"
vek = "28"
bydliste= "Praha"
#Konec kódu s proměnnýma?
#Část kódu, Která nám vypíše náš text a proměnné?
print("Ahoj jmenuji se " + jmeno + " " + prijmeni + " a jsem starý " + vek + " let" )
print("Celých " + vek + " bydlím ve městě, kde jsem se narodil a to je " + bydliste )

V textu musíme dávat pozor na mezery, aby se nám text vypsal tak jak potřebujeme, proto jsme přidaly do textu mezery, aby Python vypsal text i s mezerou a proměnná, kterou vypisujeme za textem byla oddělená mezerou. 

 

Pokud už máte kód vyzkoušený, tak už zcele jistě víte, že se nám naše proměnné vypíší do textu, který jsme napsaly. To ale stačí jen pro program, kde víme jaké proměnné budou mít hodnoty, ale pokud chceme, aby nám každý uživatel zadal svůj věk jméno a přímení, tak už to nestačí a proto tady máme funkci input. Díky této funkci nám může uživatel zadat své údaje a ty se zapíší, podle toho co nám uživatel zadal. Vezmeme si náš program, který jsme napsaly a podíváme se jak ho upravit, aby jsme mohli zavolat funkci input, a uživatel nám mohl zadat své údaje. 

#Část kódu, kde nám uživatel zadá proměnné?
jmeno = input("Zadej  svoje jméno: ")
prijmeni = input("Zadej svoje příjmení: ")
vek = input("Zadej svůj věk: ")
bydliste= input("Zadej své bydliště: ")
#Konec kódu s proměnnýma?
#Část kódu, Která nám vypíše náš text a proměnné, které uživatel zadal?
print("Ahoj jmenuji se " + jmeno + " " + prijmeni + " a jsem starý " + vek + " let" )
print("Celých " + vek + " bydlím ve městě, kde jsem se narodil a to je " + bydliste )

Kód, který jsme napsaly je na několik řádků a poměrně dlouhý, pro zkrácení můžeme funkce do sebe vnořovat, ale kód může být poměrně nepřehledný. 

#Část kódu, Která nám vypíše náš text a proměnné, které uživatel zadal?
print("Ahoj jmenuji se " + input("Zadej  svoje jméno: ") + " " + input("Zadej svoje příjmení: ") + " a jsem starý " + input("Zadej svůj věk: ") + " let" )
print("Celých " + input("Zadej ještě jednou svůj věk: ") + " bydlím ve městě, kde jsem se narodil a to je " + input("Zadej své bydliště: ") )

Řádky programu jsou nepřehledné proto doporučuji provést zápis, který máme nahoře, navíc nemáme uložené co uživatel zadal do proměnných pro pozdější použití. pro přehlednost Vám ukážu kratší program s vnořenou funkcí, který si můžete vyzkoušet.

print("Ahoj" + input("Zadej své jméno"))

#input se vymění za to co napsal uživatel
# a výstup vypadá ahoj Jméno 

 

Dneska jsme si řekly co jsou to proměnné a jak fungují a k funkci print jsme se naučily novou funkci input. V příštím díle se naučíme datové tipy a funkci len. Nyní si projděte cvičení, které jsem pro Vás připravil a zkuste splnit všechny úkoly.

 

Cvičení

 

Příklad číslo 1

 

Vytvoř program, který vypočítá třetí mocninu čísla, které uživatel zadá.

Výstup by měl vypadat nějak takto:

Ahoj spočítám ti třetí mocninu čísla, které potřebuješ umocnit.

Zadej číslo, které chceš umocnit:

Třetí mocnina z čísla x je y.

 

Příklad číslo 2

 

Napiš program, který spočítá povrch a objem válce kdy uživatel zadá výšku a poloměr podstavy.

Výstup programu by mohl vypadat nějak takto

Ahoj spočítám ti kolik je povrch a objem válce.

Zadej výšku válce:

Zadej poloměr podstavy:

Povrch tohoto válce je xx cm2 .

Obejm tohoto válce je xx cm3.

 

Příklad číslo 3

 

Nyní máš už dost znalostí, aby jsi mohl naprogramovat jednoduchou kalkulačku. Tak naprogramuj kalkulačku, která udělá výpočty dvou čísel. Kalkulačka by měla vypadat nějak takto.

Zadejte první číslo:

Zadejte druhé číslo:

Součet čísel je: x

Rozdíl čísle je: x

Podíl čísel je: x 

Násobek čísel je: x

podíl čísel je: x

druhá mocnina prvního čísla je: x

Druhá mocnina druhého čísla je: x

 

Příklad číslo 4

 

Zde ti dám kód a ty jej uprav tak, aby když do programu zadáš hodnotu:

a = 5

b = 10

Tak aby program tyto hodnoty obrátil a vypsal ti hodnoty takto

a = 10

b = 5

#Odtud dolů neměň kod ?
 a = input("a: ")
 b = input("b: ")

#odtud nahoru neměň kod?

#Napiš svůj kód  ?






#Konec tvého kodu ?

# ? Neměň kod ?
print("a: " + a)
print("b: " + b)

Matematické operace a fukce print

Nyní máme python už nainstalovaný spuštěný a můžeme se pustit do tvorby prvních jednoduchých programů, které si můžeme následně spustit. Pro lepší pochopení zdrojového kódu se v první lekci naučíme do kódu psát poznámky. Jelikož pro dobré pochopení a zapamatování kódu je dobré mít v kódu napsané poznámky pro pozdější analýzu kódu. Pokud se ke kódu vracím po několika dnech nebo měsících je stále dobré se v kódu vyznat a mít kód stále přehledný pro pozdější čtení. Dále si ukážeme základní matematické operace a funkci print.

Do konzole Pythonu můžeme zadat různé výpočetní operce, které nám python spočítá.

Jak můžete vidět z obrázku můžeme sčítat odčítat násobit dělit znakem // nám Python dělí na celé číslo a úplně ve spodním příkladu znakem % nám Python vypíše zbytek z dělení.

Ovšem do této konzole pokud zadáme nějakou operaci Python ji provede a už se k ní nemůžeme vrátit a musíme celý proces opakovat znova . Proto musíme náš program uložit do souboru, který následně spustíme.

V IDLE vybereme nový soubor a otevře se nám nové okno, kam můžeme zapsat náš program a následně uložit.

Do konzole jsem zadal základní matematické operace a uložil program a spustil bohužel do konzole se mi nic nevypsalo:

Program spustím tak, že při tvorbě programu vyberu kartu Run a a vyberu Run module a nebo stisknutím klávesy F5

Program před spuštěním musím uložit vše je intuitivní a zvládne to opravdu každý a program se spustí. Tento postup si pečlivě zapamatujte jelikož ho budeme používat téměř pořád.

Ovšem zpět k našemu programu, když jsem zapsal do souboru matematické operace, uložil a spustil se nic nestalo a vypočtené matematické operace se nám nezobrazily. Pro zobrazení textu nebo výpočtu musíme totiž použít funkci print. Nyní si ukážeme jak se tato funkce používá v programu.

Zkuste do svého programu zadat tento kód a spustit. 

print(1)
print(1, 2, 3)
print(1 + 1)
print(3 * 8)
print(10 - 2.2)
print(3 + (4 + 6) * 8 / 2 -1)
print("*" * 80)
print("Ahoj" + " " + "všichni")
print("Součet čísel 3 a 8 je", 3 +8)
print("Máma má mísu")

Takto vypadá zdrojový kód matematických operací, které chci vypsat za pomoci funkce print

 

 

Na obrázku můžeme vidět použití funkce print v pravo a v levo můžeme vidět výstup, jaký nám python vypíše.

 

Ovšem pro přehlednost kódu jsme si slíbily, že se naučíme do kódu psát popisky.

 

print(1) 
print(1, 2, 3) 
print(1 + 1) #python umí sčítat 
print(3 * 8)#python umí násobit 
print(10 - 2.2)#python umí vypočítat výpočty s desetinnými čísly 
print(3 + (4 + 6) * 8 / 2 - 1) #python umí vypočítat dlouhé výrazy 
print("*" * 80) print("Ahoj" + " " + "všichni!") 
print("Součet čísel 3 a 8 je", 3 + 8) 
print('Máma má mísu') # python umí vypsat text

 

Takto napsaný kód a části kódu oddělené znakem # nemají na program žádný vliv a můžeme si takto psát do kódu poznámky a popisky. Při psaní kódu v Pythonu je naprosto nezbytné neodsazovat kód mezerami a nebo tabulátory, tam kde nemá být odsazený. 

 

Toto byla lekce, kde jsme se naučily základní práci s matematickými operacemi a funkci print. V příštím díle se podíváme na větší možnosti využití funkce print.

 

Jelikož jsme se naučily dost o funkci print a matematických funkcích je čas na pár cvičení.

CVIČENÍ:

Příklad číslo 1:

 

Napiš program, který vypočítá a napíše obvod a obsah čtverce se stranou 12 cm.

Výstup programu by měl napříkad vypadat nějak takto:

Ahoj spočítám ti kolik je obvod a obsah čtverce se stranou 12 cm.

Obvod tohoto čtverce je xx cm.

Obsah tohoto čtverce je xx cm2.

 

Příklad číslo 2:

 

Napiš program, který vypočítá obvod a obsah obdélníku se stranou 12 cm a 21 cm.

Výstup programu by mohl vypadat nějak takto

Ahoj spočítám ti kolik je obvod a obsah obdélníku se stranou 12 cm a 21 cm.

Obvod tohoto obdélníku je xx cm .

Obsah tohoto obdélníku je xx cm2.

 

Příklad číslo 3:

 

Napiš program, který spočítá povrch a objem válce s výškou 25 cm a poloměrem podstavy 5 cm.

Výstup programu by mohl vypadat nějak takto

Ahoj spočítám ti kolik je povrch a objem válce s výškou 25 cm a poloměrem podstavy 5 cm.

Povrch tohoto válce je xx cm2 .

Obejm tohoto válce je xx cm3.

 

Příklad číslo 4:

 

Oprav tento kód, tak aby program zase fungoval a zkus opravený program spustit.

print(Seznámení s funkcí print") 
print("Dva texty můžeme sloučit znaménkem"+" plus.") 
	print('funkce print("Ahoj " + "světe")') 
print(("Na nový řádek se text vypíše zapsáním \ a n. vyzkoušej si to!!!") 
print("první řádek \n druhýřádek")

Slovník

Angličtina je pro programování naprosto nezbytná a je potřeba se naučit jak mluvit anglicky kvůli komunikaci s ostatními programátory nebo vyhledávání informací v anglickém jazyce, tak je potřeba se naučit technické výrazy, které se člověk při běžném hovoru nenaučí.

 

Proto jsem vytvořil tento slovník, kam budu postupně přidávat nové věci na které narazíme a které si přeložíme, aby jste byly schopni také rozumět technické stránce v cizím jazyce, pokud se budete s někým bavit o programu, je naprosto nezbytné umět i kód popsat v anglickém jazyce. 

 

Znaménko anglický překlad Český překlad
+ plus plus
minus mínus
* asterix hvězdička násobení
/ slash lomítko(dělení)
= equal rovná se
  addiction sčítání
  subtraction odčítání
  division dělení
  multiplcation násobení (2 * 6 two musltiple six)
** exponent 22 two power to two umocňování
  two digit number Dvojciferné číslo
( ) parantheseses kulaté závorky
[ ] square braces Hranaté závorky
{ } curly braces Složené závorky
dash pomlčka
. dot tečka
double quotes Uvozovky
# hashtag mřížka
  space mezerník
  string řetězec
  variabels proměnná
> grater than větší
< less than menší
>= grather than or equal větší nebo rovno
<= less than or equal menší nebo rovno
== equal to rovná se v programování
!= not equal nerovná se
  even number sudé číslo
  odd number liché číslo
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     

 

Instalace Pythonu

Instalace na Windows

První krok, který budeme muset udělat pro to, abychom mohli začít programovat v programovacím jazyce python je instalace programovacího jazyka na náš počítač.

Pokud jste se rozhodli pustit se do programování, tak věřím, že je pro vás velmi jednoduché nainstalovat tento programovací jazyk na Váš počítač. V době, kdy tento web tvořím je nejnovější verze pythonu 3.9.2., kterou používám.

Prvním krokem, který budete muset udělat je na web https://www.python.org/downloads/ a stáhnout nejnovější verzi programovacího jazyka. Na kartě download vyberte nejnovější verzi a po té vyberte operační systém, na kterém budete programovat. Já osobně používám windows 64 bit a proto jsem si stáhnul python pro tuto platformu

Po té projdete klasickou instalací, jako když instalujete jakýkoliv jiný program. Jenom dejte pozor aby jste při instalaci zaškrtli políčko Add python 3.9 to PATH. Jinak projdete klasickou instalací na kterou jste zvyklí z instalace ostatních programů. 

V minulé lekci jsme se naučily jak spustit příkazovou řádku pomocí příkazu cmd. Do vyhledávacího pole zadáme IDLE python a najde se nám IDLE, ve kterém budeme programovat doporučuji si připnout IDLE na lištu nebo dát na plochu, ať k němu máme co nejsnadnější přístup. 

Instalace na Linux

 

Instalace Pythonu v Linuxu může vypadat komplikovaně, ale je to velmi jednoduchý a rychlý proces. Pro instalaci Pythonu v Linuxu budeme potřebovat terminál, který jsme si představily v minulém díle.

 

Ovšem v linuxu často bývá už Python předinstalovaný, proto do konzole zadejte příkaz, který vám vypíše, jakou verzi Pythonu máte v systému.

 

python3 --version

Pokud se objeví například Python 3.9.2 znamená to, že máte vyhráno a python máte nainstalovaný.

 

Pokud systém nenajde žádnou verzi pythonu je potřeba ji nainstalovat příkazem:

sudo apt-get install python3

 

Ještě bude potřeba doinstalovat modul tkinter, který nainstalujeme příkazem

 

sudo apt-get install python3-tk

 

Pokud se Vám bude v tomto prostředí pracovat nekomfortně, můžete si stáhnout nějaké vývojové prostředí jako je PyCHarm, NetBeans nebo Visual Studio od Microsoftu to si každý musí vyzkoušet sám co mu vyhovuje a nebo nevyhovuje. Mě osobně stačí základní IDLE od Pythonu jelikož i v základu je pro mne velice přehledné a nepotřebuji žádné další vývojové prostředí třetích stran, ale toto nechám na Vás, každý si musí sám vyzkoušet co mu vyhovuje a nebo nevyhovuje.

 

Co ovšem doporučuji je vývojové prostředí si  upravit já osobně si zvětším velikost písma a zapnout číslování, abych viděl, na kterém čísle.  Zapnutí číslování je velice jednoduché na kartě options zapnete možnost show line number. 

 

 

Další věc, kterou je dobré udělat, je zvětšit si velikost písma v IDLE. Znovu vyberte možnost options a vyberte kartu configure IDLE a otevře se vám okno, ve kterém můžete vybrat velikost písma. Větší písmo zpřehlední text a lépe se orientujete v kódu a najdete lépe chyby v programu, který napíšete chybně. 

 

 

Vyberte velikost, která vám vyhovuje a máme vše nastavené pro začátek programování. V dalším díle ovšem ještě programovat nezačneme. Jelikož je mnoho informací si hledat v anglickém jazyce a při programování rozumět angličtině, vytvořím slovník, kam budeme postupně zapisovat a doplňovat anglické výrazy na které při programování narazíme. Budu se na vás těšit v další lekci. 

Příkazový řádek

Ne všichni programátoři používají příkazovou řádku, ale před začátkem programování je dobré si říci co to příkazová řádka je a ukázat si alespoň základní příkazy v příkazové řádce. Jelikož nevlastním operační systém IOS, tento návod bude jen pro Linux a Windows, které používám a v obou systémech mám příkazovou řádku odzkoušenou.

 

Nejprve si řekneme co to vlastně ta příkazová řádka je. Příkazová řádka je prostředí, ve kterém uživatel komunikuje s počítačem pomocí textových příkazů. Dříve počítače neměly grafické rozhraní jako dnes a uživatel musel komunikovat s počítačem pomocí textových příkazů v příkazové řádce.

Příkazová řádka ve Windows

Příkazová řádka ve Windows se spouští jednoduchým příkazem cmd a nebo zkratkou win + R, který se zadá do vyhledávacího okna. 

Do  vyhledávacího okna zadáte příkaz cmd jako na obrázku a spustíte příkazový řádek, popřípadě můžete ještě spustit příkazovou řádku jako administrátor. 

Po zadání příkazu cmd do vyhledávacího okna se nám otevře konzole, ve které můžeme komunikovat s počítačem pomocí textových příkazů. Nyní si představíme nejzákladnější příkazy.

Nejdůležitější v příkazové řádce bude orientace kde se zrovna v systému nacházíte, v jakém adresáři a co je na daném místě za soubory a složky. Jak už jsem jednou řekl, příkazovou řádku používat nemusíte, ale jsou situace, kdy se tomu nevyhnete např. při instalaci  frameworků.

dir – Základní příkaz, který vám vypíše, jaké soubory a složky jsou ve složce, ve které se zrovna nacházíte.

cd název_složky – Tento příkaz vás přesune do další složky. Příkazem dir si zjistíte jména složek a souborů, které se v adresáři nacházejí a příkazem cd název_složky se přesunete do složky, do které potřebujete např. cd hudba.

cd .. – občas se stane, že se potřebujeme vrátit do adresáře o úroveň níž a to uděláme tímto příkazem.

mkdir – vytvoření nové složky 

Toto jsou ty nejzákladnější příkazy pro pohyb v adresářích, které můžeme při programování potřebovat např. při instalaci frameworku Django.

Příkazová řádka v Linux

Příkazové řádce v Linuxu se říká terminál. I přesto, že Linux má také grafické rozhraní a podle mého asi už lepší než Windows budete muset Terminál používat používat častěji než ve Windows například při instalaci programů. Různé verze Linuxu mají trochu odlišné terminály, proto já zde popíšu nejrozšířenější verzi Ubuntu, kterou sám používám. 

ls – Základní příkaz, který vám vypíše, jaké soubory a složky jsou ve složce, ve které se zrovna nacházíte.

cd název_složky – Tento příkaz vás přesune do další složky. Příkazem dir si zjistíte jména složek a souborů, které se v adresáři nacházejí a příkazem cd název_složky se přesunete do složky, do které potřebujete např. cd hudba.

cd .. – občas se stane, že se potřebujeme vrátit do adresáře o úroveň níž a to uděláme tímto příkazem.

 

mkdir – vytvoření nové složky

Příkazy pro pohyb ve složkách jsou skoro stejné, ale ve Windows nezáleží zda zadáte název adresáře s velkým nebo malým písmenem, který začíná velkým nebo malým písmenem, zatímco v Linuxu musíte zadat přesné jméno adresáře včetně velkého nebo malého písmena.

Dnes jsme se seznámili s příkazovou řádkou a naučili se základní příkazy pro pohyb v adresářích a v příštím díle si konečně nainstalujeme Python, abychom už mohli začít konečně programovat.

Programovací jazyky

V minulé lekci jsme se dozvěděli co je to programování a že se příkazy, které bude počítač vykonávat zapisují pomocí programovacího jazyka. Programovacích jazyků existuje nepřeberné množství, každý má nějaké výhody a nějaké nevýhody a my se dneska podíváme na to jaké programovací jazyky existují.

 

Programovací jazyky můžeme dělit několik způsoby. První způsob je na jazyky nižší a jazyky vyšší úrovně.

 

Nízkoúrovňové jazyky

Jazyky nižší úrovně mají primitivní instrukce odpovídají příkazům procesoru. Programy jsou závislé na procesoru a velikou nevýhodou je, že jsou nepřenositelné na jiný (nepříbuzný) procesor. Kód programu je pro člověka příliš složitý a nesrozumitelný. Velikou výhodou je, že programy mohou být velmi efektivní. Další výhodou je, že programátor má takto přístup i k funkcím počítače, které by měl ve vyšším programovacím jazyce nedosažitelné Nejčastěji jazyky symbolických adres Assembler nebo přímo strojový kód

Vysokoúrovňové Jazyky

Vyšší programovací jazyky jsou člověku lépe srozumitelné. Programy zapsané ve vyšších jazycích jsou obvykle kratší a lépe čitelné. Ve vyšších programovacích jazycích je možné používat prvky přirozeného jazyka. Další výhodou vyšších programovacích jazyků je jejich přenositelnost. Programy po malých (někdy i žádných) úpravách mohou běžet na různých počítačových platformách. V praxi je vyšší programovací jazyk vše, co není Assembler. Pascal, Basic, Java, C++, Python a další jsou jazyk vyšší úrovně. Nevýhodou těchto jazyků, že se musí převádět kompilátorem.

Nás bude zajímat víceúrovňový programovací jazyk Python. Ovšem programovací jazyky se mohou dále ještě dělit na interpretované a kompilované programovací jazyky.

Interpretované

Vyšší programovací jazyky jsou člověku lépe srozumitelné. Programy zapsané ve vyšších jazycích jsou obvykle kratší a lépe čitelné. Ve vyšších programovacích jazycích je možné používat prvky přirozeného jazyka. Další výhodou vyšších programovacích jazyků je jejich přenositelnost. Programy po malých (někdy i žádných) úpravách mohou běžet na různých počítačových platformách. V praxi je vyšší programovací jazyk vše, co není Assembler. Pascal, Basic, Java, C++, Python a další jsou jazyky vyšší úrovně. Nevýhodou těchto jazyků je, že se musí převádět kompilátorem.

Kompilované

Kompilované jazyky jsou celé přeloženy a až potom mohou být spušněny. Jsou rychlejší, ale mají vyšší nároky na formální správnost kódu. Překládají se kompilátorem, výsledkem překladu je (většinou) .exe soubor. Patří sem většina klasických programovacích jazyků. Do této skupiny patří například tyto jazyky Algol, Fortran, Cobol, PL/I, Pascal, C, Java a další.

 

Mnozí z nás si nevyberou programovací jazyk, když se řekne nízkoúrovňový a nebo vysokoúrovňový nebo interpretovaný a kompilovaný programovací jazyk. Každý jazyk má své výhody a nevýhody a proto se podíváme na některé populární programovací jazyky.

 

Java

Co se týká karierního uplatnění a platu, Java je jazykem číslo 1. Je stabilní a robustní. V Česku jsou stovky firem, které Javu používají. V Javě se vyvíjí, jak webové a desktopové aplikace, tak i aplikace pro andrid. Poptávka po Javě je velká, ale je to jazyk, který je poměrně složité se naučit.

 

Velikou výhodou Javy je nezávislost na platformě. Na Jave dnes dokáže fungovat skoro všechno – mobilní telefony, počítače a notebooky používající Linux, macOS i Windows a další elektronická zařízení.

 

JavaScript

JavaScript stojí za každou moderní webovou stránkou a je to opravdu rozšířený programovací jazyk. Zabezpečuje, aby webové aplikace byly interaktivní a jejich obsah se dal dynamicky nahrávat. Pokud bychom používali jen HTML a CSS, stránka by byla jen statická.

 

JavaScript si najde uplatnění ve většině, ne-li ve všech firmách. Není tak stabilní jako Java či Python, neustále se vyvíjí a proto je nutné nepřetržitě sledovat nové trendy a vylepšení. Ale na samotné pochopení je to jazyk velmi složitý, a proto se do něj doporučujeme pustit až se solidním programátorskými zkušenostmi.

 

C#

C# je jazyk vyvinutý společností Microsoft v roce 2000. Tento jazyk je také velice silný, protože dokáže pohánět komplexní webové či desktopové aplikace. Používá se nejčastěji na e-shopech, bankovních aplikacích, monitorovacích nástrojích a podobně. Svoje uplatnění si stejně jako Java najde i ve vývoji Android aplikací. Ale jak už jsme naznačili výše, C# je z hlediska syntaxe srozumitelnější jazyk.

 

PHP

Internetový skriptovací jazyk (serverový) používaný k tvorbě webových stránek. Instrukce se vkládájí do HTML kódu, syntaxe je podobná jazyku C. Práce programu probíhá v serveru, na uživatelský počítač se posílají jen výsledky. Má ohromné možnosti: dokáže pracovat s databázemi, s velkým množstvím internetových protokolů (IMAP, POP3, SMTP – zpracování emailů; NNTP – news protokol; …), dokáže vytvářet obrázky a PDF soubory, má spoustu funkcí na zpracování řetězců, … Navíc je zdarma a volně šiřitelné! Oficiální stránky: www.php.net.

 

Python

Tento programovací jazyk nás bude zajímat nejvíce, protože v tomto programovacím jazyce budeme programovat. Jako začátečník se Python naučíš mnohem rychleji než ostatní jazyky. Nemusíš se totiž učit objektově orientované programování (OOP), což je postrach většiny začínajících programátorů. Zápis kódu v Pythonu je velmi podobný běžnému psaní. Větu „Hello World“ v něm napíšeš jen pomocí jednoho řádku kódu.

 

Python se v posledních letech stal programovacím jazykem číslo jedna. Stal se nejvíce používaným a vyučovaným jazykem na světě. V dnešní době Python předběhl ostatní programovací jazyky a používá ho zhruba 1/3 vývojářů na celém světě.

 

https://pypl.github.io/PYPL.html

Úvod do programování

Ahoj, vítám tě v mém kurzu pro programovací jazyk Python a děkuji, že jsi zavítal na mé webové stránky.

Dnes se podíváme na úvod do programovacích jazyků a řekneme si co je to vlastně programování, k čemu je programování dobré a k čemu se dá využívat.

Většina lidí, když se řekne programování si představí programátora za počítačem, který kouká do obrazovky a ťuká něco do klávesnice. Programování, ale vůbec nemusí být o počítačích. Můžeme programovat i jiné věci než počítače. Pro pochopení, můžeme vytvořit program průběhu koncertu a nebo festivalu, kdy nám  bude program říkat, v jakých krocích se bude co dít. Můžeme „programovat“ lidi např. dáte tanečníkovi postup, jak zatancovat určitou taneční kreaci. Zvedni nohu, rozpaž ruce, otoč se a takto můžeme dát přesný sled instrukcí, které má tanečník udělat.

Programování pro nás tedy bude počítači zadávat instrukce a říkat co má přesně dělat. Instrukce, které budeme počítači říkat, aby udělal, budeme zadávat pomocí textu.

I přes to, že dnes už stroje umí komunikovat s člověkem pomocí dotyku a nebo se dají ovládat hlasem, programování nebo-li zadávání instrukcí se dělá nejlépe pomocí textu. Protože text, který naprogramujeme můžeme upravovat, porovnávat, kopírovat, posílat atp.

Instrukce pomocí textu, budeme počítači sdělovat pomocí  programovacího jazyka. Programovacích jazyků je spousta a my podíváme se na programovací jazyky v další lekci. V tomto kurzu se  zaměříme na programovací jazyk Python. Programovací jazyk je jen způsob zápisu instrukcí, ale nejdůležitější je umět programátorsky myslet. Tedy jaké instrukce dát počítači, aby dělal to, co chceme.

Pojďme se podívat co se na kurzu naučíš.

  • Základy programování
  • Tvorbu vlastních menších projektů
  • Úkoly a příklady pro programování a pochopení jednotlivých témat

Určitě doporučuji projít všechny lekce postupně a pečlivě a splnit všechny úkoly, které budou zadané, protože při splnění těchto úkolů se nejlépe naučíte a pochopíte dané téma.

Já už nebudu dále prodlužovat tento úvod do programování. Ještě jednou ti děkuji a pojďme se podívat na další lekci.