Při programování často potřebujeme vykonat určité operace opakovaně. K tomu se hodí tzv. funkce.
def
a tělo funkce (vnitřní příkazy) jsou odsazeny
def jmenoFunkce( parametry ): telo_funkce
Maximum ze dvou čísel:
def maximum(x,y): if x>y: return x else: return y
return
vrací výsledek funkce. Příklad volání této funkce:
max = maximum(2,0.5) print(max) # nebo rovnou muzeme predat jiné funkci a = 6 b = 7 print("Maximum z ",a," a ", b, " je ", maximum(a,b))
def hello(): print("Hello World!")
return
hello()
def maximum2(x,y): if (x > y): return x, True else: return y, False
maxValue, info = maximum2(5,6) #zkusime predat printu: print("Maximum z 5,6 je ", maximum2(5,6))
quit()
if (spatny_vstup): quit()
input()
- načte řetězec ze standardního vstupu
print( argumenty )
- tiskne řetězec na standardní výstup
int( argument )
- převod na celé číslo
float( argument )
- převod na reálné číslo
str( argument )
- převod na řetězec
quit()
- ukončí běh programu
soucet_delitelu
, která spočte součet dělitelů čísla $n$, tedy funkci $f(n)$.
soucet_delitelu
použijte v programu, který vypíše seznam super-dokonalých čísel od 1 do 10000.
gcd1(a,b)
a gcd2(a,b)
, které vrátí největšího společného dělitele čísel $a$ a $b$.
ord('A')
, opačně znak z celého čísla získáte funkcí chr(65)
convert_num_to_month
, která dostane jako parametr pořadové číslo měsíce v roku a vrátí jeho jméno.
convert_month_to_num
, která dostane jako parametr jméno měsíce v roku a vrátí jeho pořadové číslo v roce.
month=['leden','unor','brezen','duben','kveten','cerven','cervenec','srpen','zari','rijen','listopad','prosinec']
'x
', jinak se vytiskne mezera '
'
Např. pro vstup 10 vypadá výsledek takto:
| | | | | | | | | ------------------- |x| |x| |x| |x| |x ------------------- | |x| | |x| | |x| ------------------- |x| |x| |x| |x| |x ------------------- | | | |x| | | | |x ------------------- |x|x|x| |x| |x|x|x ------------------- | | | | | |x| | | ------------------- |x| |x| |x| |x| |x ------------------- | |x| | |x| | |x| ------------------- |x| |x|x|x| |x| |x
jedenmiliondvestepadesatsedmtisictristasedmdesatpet
1257375
2543210
dvamilionypetsetctyricettritisicdvestedeset
jeden, dva, tri, ctyri, pet, sest, sedm, osm, devet, deset, jedenact, dvanact, trinact, ctrnact, patnact, sestnact, sedmnact, osmnact, devatenact, dvacet, tricet, ctyricet, padesat, sedesat, sedmdesat, osmdesat, devadesat, sto, dveste, trista, ctyrista, petset, sestset, sedmset, osmset, devetset, tisic, tisice, milion, miliony, milionu
.