4

Čísla a řetězce

V této kapitole si představíme úplné základy programování v Pythonu. Zatím ještě nebudeme psát celé programy, nýbrž budeme Pythonu posílat jednotlivé příkazy a uvidíme, co nám odpoví. Jak už jsme si řekli dříve, počítač je v podstatě jen trochu chytřejší a pekelně rychlá kalkulačka. Nejsnadněji se tedy s programováním seznámíme, když si pomocí Pythonu necháme něco spočítat.

Python konzole

Abychom si mohli s Pythonem povídat, musíme spustit takzvanou Python konzoli. To je prostředí, ve kterém můžeme s Pythonem komunikovat a posílat mu příkazy.

Pokud pracujete pod Windows, Python konzoli spustíte tak, že do termínálu napíšete příkaz.

$ python

Pozor, že znak dolaru není součástí příkazu. Používáme ho pouze k tomu, abychom naznačili, že je třeba tento příkaz napsat do terminálu vašeho operačního systému. Pokud pracujete na Macu nebo Linuxu, správný příkaz je

$ python3
Pozor!

Pokud v Linuxu nebo na Macu spustíte příkaz jako ve Windows, pravděpodobně se vám spustí jiná verze Pythonu, se kterou vám následující lekce nebudou fungovat.

Hodnoty

Hodnoty představují všechny možné druhy dat, se kterými můžou naše programy pracovat. Hodnoty se dle způsobu použití dělí do různých kategoríí zvaných datové typy. Datových typů existuje velké množství. V tuto chvíli si představíme ty nejzákladnější - celá čísla a desetinná čísla.

Celá čísla

Nejjednodušší datový typ jsou celá čísla. Pod tento typ patří hodnoty jako 12, 1321500, -5, 0 a podobně. Pokud do Python konzole napíšete hodnotu, Python vám ji vypíše zpátky, což znamená, že vám rozumí :-)

>>> 127
127

Desetinná čísla

S celými čísly bychom si dlouho nevystačili. Dalším datovým typem tedy budou desetinná čísla, např. 13.4, 6.0, -0.0001, 0.0 apod. Pozor, že programátoři vždycky píší desetinná čísla s tečkou, nikoliv s čárkou.

>>> 3.141592
3.141592

Aritmetické operátory

Nyní už máme prostředky k tomu, abychom mohli pomocí Pythonu něco spočítat. V Python máme k dispozici běžné aritmetické operátory:

  • sčítání: +
  • odčítání: -
  • násobení: *
  • dělení: /

Díky těmto operátorům můžeme Python použít jako kalkulačku a psát aritmetické výrazy jako

>>> 12 * 13 + 10
>>> (13.4 - 1.4) / 4

Python ovšem nabízí ještě další užitečné operátory:

  • mocnění: **
  • celočíselné dělení: //
  • zbytek po dělení: %

Pomocí mocnění můžeme umocňovat čísla, například

>>> 2 ** 8
256

Pomocí celočíselného dělení můžeme dělit celá čísla

>>> 14 // 4
3

Pokud by nás zajímal zbytek po celočíselném dělení, můžeme použít operátor pro zbytek po dělení

>>> 14 % 4
2

Řetězce

Pokud chceme v Pythonu zadat nějaký kousek textu, použijeme takzvaný řetězec. Řetězce se v Pythonu uzavírají do jednoduchých nebo dvojitých uvozovek. Například:

>>> 'martin'
>>> '12. března 2018'
>>> "prací prášek"
>>> "Don't panic"

Řetězce se v něčem chovají podobně jako čísla, můžeme je například sčítat a násobit

>>> 'martin' + ' ' + 'podloucký'
martin podloucký
>>> 'bla ' * 10
'bla bla bla bla bla bla bla bla bla bla '

Cvičení

1

Jednoduchá aritmetika

Použijte Python konzoli jako kalkulačku:

  1. Jeden lístek do divadla Pěst na oko stojí 12 euro. Spočítejte měsíční příjem divadla ze vstupného přichází-li průměrně 174 návštěvníků na jedno představení a divadlo hraje 15 představení měsíčně.
  2. Divadlo se rozhodlo prodávat studentské vstupné ve výši 65% plného vstupného. Jak se změní měsíční příjem divadla pokud víme, že polovina návštěvníků jsou studenti?
2

Hrátky s řetězci

  1. Vytvořte řetězec obsahující jméno divadla.
  2. Vytvořte řetězec obsahující jméno divadla tak, že sečtete dohromady jednotlivá slova toho jména.
  3. Zkuste vynásobit řetězec celým číslem. Jaký jste dostali výsledek?
  4. Vytvořte řetězec který vypadá takto: '111111000000', ale místo šesti jedniček a šesti nul obsahuje 256 jedniček a 256 nul.
Hotovo!

Hurá, pokud jste dorazili až sem, máte hotovo. Nalepte si lísteček a pokud chcete, můžete pokračovat bonusovými příklady.

Bonusy

3

Úroky

Fíha banka a.s. nabízí na svých stránkách spořící účet s úrokem 2,4%. Když si na takový účet uložíte 1 000 000 kč, kolik peněz nastřádáte za 10 let?

4

Nový koberec

Do malého sálu v divadle, který má tvar čtverce o rozloze 30m2 potřebujeme koupit nový koberec. Jakou délku má mít strana koberce? Vejde se nám srolovaný do dodávky s nákladovým prostorem dlouhým 5m?

5

Shannonovo číslo

  1. Takzvané Shannonovo číslo má hodnotu 10120 a udává kolik nejméně lze odehrát různých šachových partií. Vytvořte řetězec, který obsahuje toto číslo zapsané běžným způsobem pomocí cifer. Například 103 je 1000, 106 je 1000000 atd.
  2. Čísla s mnoha nulami je v Česku zvykem zapisovat tak, že každé tři nuly následuje mezera. Jeden milión se tedy zapíše jako 1 000 000. Vytvořte řetězec, který obsahuje Shannonovo číslo z předchozího cvičení zapsané v tomto formátu.