Tyto stránky již nejsou udržovány. Obsah je postupně přesouván/aktualizován na adrese chytrosti.marrek.cz.
782/3558
Obsah:
Zvolte si prosím vlastní úlohu podle své vlastní zdatnosti tak, aby vás tato úloha ve vašem studiu a poznání posunula -- pokud možno vpřed :-)
Zde je nabídka pro ty, co na nic nemůžou přijít:
Vytvořte program pro generování a výpis časového jízdního řádu dálkové autobusové linky podle informací zadaných od uživatele.
příklad:
Zadejte jízdní časy mezi zastávkami v minutách: 15 35 60 121 10
Čas výjezdu autobusu (HH MM): 10 30
Jízdní řád:
10:30 zastávka 1 - výchozí
10:45 zastávka 2
11:20 zastávka 3
12:20 zastávka 4
14:21 zastávka 5
14:31 zastávka 6 - konečná
Celková doba jízdy: 4 hodiny a 1 minuta
Implementujte vložení (případně nalezení a smazání) čísla do binární stromu.
Zde je několik málo mírně obtížnějších úloh na procvičení podmínek a cyklů. Vstup je brán vždy z klávesnice. Pokud někdo z vás vymyslí nějakou podobnou zajímavou úlohu a pošle mi ji, odměním ho hezkou známkou a úlohu zde rád zveřejním.
Je dána posloupnost čísel v intervalu 0 až 100, z nichž některá mohou být stejná. Určete, kolik hodnot se mezi vstupními čísly nachází pouze jednou.
Vypište na obrazovku kalendář ve tvaru:
Po Út St Čt Pá So Ne
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
Tato úloha nespočívá v pouhém nalezení modulu (Calendar), který kalendář umí vypsat! Je potřeba jej opravdu naprogramovat.
Aktuální datum, nebo měsíc zjistíte pomocí modulu datetime
:
http://docs.python.org/2.7/library/datetime.html, ale není to až tak zapotřebí.
Pro začátek stačí, když program bude načítat první den v týdnu, který připadá
na první den měsíce. Například program, generující výše zmíněnou ukázku by přijal
jako vstup číslo 2
, protože měsíc začíná úterkem.
>>> import datetime
>>> today=datetime.date.today()
>>> today.month
10
>>> today.day
30
>>> today.year
2012
>>> today.weekday()
1
>>> datetime.date(2012,10,31).weekday()
2
>>> datetime.date(2012,10,28).weekday()
6
>>> dayCount=[None,31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
`--> stáhnout
Je dáno přirozené číslo N. Jakým nejmenším počtem platidel je možné zaplatit částku N korun, máte-li k dispozici neomezené množství českých mincí a bankovek všech druhů? Vytiskněte rozpis použitých platidel.
kolik? > 5839
>> 1 x 5000
>> 2 x 2000
>> 1 x 1000
>> 1 x 500
>> 1 x 200
>> 1 x 100
>> 1 x 20
>> 1 x 10
>> 1 x 5
>> 2 x 2
Je dána posloupnost celých čísel. Vypište jen ta čísla, jejíchž cifry jsou ve vzestupném pořadí.
zadej čísla > -129 598 496 568 598 -125
>>>>>>>>>>>>> -129 568 -125
Nalezněte všechna dvojciferná čísla, se zadaným ciferným součtem. Úlohu opakujte i pro trojciferná čísla.
cirerný součet = 8
>>> 17 26 35 44 53 62 71
>>> 107 206 ... 413 ... 701 ...
Napište funkci
def nasobek(cislo):
pass
`--> stáhnout
cislo
: celé kladné čísloNapříklad:
nasobek(123058) == 1 * 2 * 3 * 5 * 8
nasobek(7009) == 7 * 9
nasobek(12345) == 120
`--> stáhnout
V souboru je zadáno zapsáno několik čísel. Vypište ta čísla, která se v tomto souboru nachází právě třikrát
1066
3391
1622
3673
3953
vytvořte funkci
def shoda(retezec_a, retezec_b):
pass
`--> stáhnout
Výstupem bude řetězec znaků 0
a 1
. Znak 1
bude tam, kde se oba řetěz
shodují.
ahoj karle neco sem napisu
azdr karle toto je konec
---------- ---------------
1000111111 000110100000000
(podmínky, cykly, funkce, soubory)
Vytvořte funkci generující bezpečné heslo.
def heslo(pocet_naku=8):
velka = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
pass
return heslo
`--> stáhnout
Bezpečné heslo obsahuje alespoň jedno velké písmeno, alespoň jedno malé písmeno a alespoň jednu číslici.
Vytvořte funkci pro ověření validity zápisu závorek v matematických výrazech.
def zavorky(pocet_naku=8):
return True or False
if __name__ == '__main__':
assert zavorky("((5+3)*2+1)") == True, "Simple"
assert zavorky("{[(3+1)+2]+}") == True, "Different types"
assert zavorky("(3+{1-1)}") == False, ") is alone inside {}"
assert zavorky("[1+1]+(2*2)-{3/3}") == True, "Different operators"
assert zavorky("(({[(((1)-2)+3)-3]/3}-3)") == False, "One is redundant"
assert zavorky("2+3") == True, "No brackets, no problem"
assert zavorky("([{}()]{[]})") == True, "No brackets, no problem"
assert zavorky("([[{}(])]{[]})") == False, "No brackets, no problem"
`--> stáhnout
S pomocí knihovny matplolib vytvořte následující graf.