V dnešním díle se budeme zabývat základními matematickými operacemi, které jsou nezbytnou součástí základů. Patří zde +,-,*,/,%. Pomocí těchto jednoduchých operací spočteme téměř cokoli, stačí jen trochu přemýšlet a zavzpomínat na 3. třídu . Pokud si myslíte, že znaménko % budeme používat pro výpočet procent tak se mýlíte. Je to takzvané modulo, neboli zbytek po celočíselném dělení. Hodí se například když chceme číslo rozkouskovat po jednotlivých cifrách s použitím také klasického dělení.
modulo:
>>>a=10%3
>>>a (enter)
a=1
Náhodně generovaná čísla
Pro generování náhodného čísla musíme mít vložený modul random. K tomu použijeme příkaz import. Umožňuje Vám importovat neboli vtáhnout do vašeho programu dodatky k čistému Pythonu. Příkazy tohoto typu musí být úplně nahoře v kódu. Je logické, že se prvně musí nahrát nějaká funkce do programu a pak ji můžeme používat. Funkci random pak zavoláme pomocí příkazu random.randint(10,20), kde random značí, že používáme funkci náhodně generovaných hodnot a randint(10,20) vytváří náhodná celá čísla od 10 do 20. Což je z kódu patrné.
vypadá to takto:
>>>import random #na začátku kódu
>>>random.randint(10,20)
Příklad
Chceme vytvořit program, který provádí výše uvedené operace. Ještě si oživíme zadávání dvou vstupních hodnot, to se vytváří příkazem nazev_promenne = input('Zadejte cislo: '). Python automaticky uloží do proměnné vstup z klávesnice (tzn. číslo které zadáme na klávesnici).
x = input('Zadej 1. cislo: ') #například 8
y = input('Zadej 2. cislo: ') #například 7
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
Výstup:
Zadej 1. cislo: 8 -Zadali jsme číslo 8 poté co nás program pěkně požádal
Zadej 2. cislo: 7
15 -1 56 1 1 -výsledky
(pokud se divíte, že na levé straně kódu nemám ty 3 šipky, to je z toho důvodu, že zobrazuji kód který byl napsán v samostatném souboru a né z příkazového řádku)
Úkol:
napiště program, který náhodně vybere 2 čísla od 1 do 20 a provede s nimi výše zmíněné operace.
Výsledek:
import random
a=random.randint(1,20) b=random.randint(1,20) print 'a + b = ',a+b
print 'a - b = ',a-b
print 'a * b = ',a*b
print 'a / b = ',a/b
print 'a % b = ',a%b
V příštím článku budeme probírat podmínky a cykly.