Úvod do programování

Anotace předmětu:

Úvodní kurz programování v jazyce Python. Algoritmy, jejich vlastnosti. Znázorňování algoritmů. Booleovská algebra (unární a binární zákony). Rekurze, iterace. Časová a paměťová složitost. Třídící algoritmy.

Přednášky:

Seznam přednášek pro zimní semestr.

Přednáška Téma Ke stažení
1. Algoritmus, vlastnosti, popis. přednáška
2. Čísla a jejich reprezentace. Datové typy. přednáška
3.+4. Základní a dynamické datové struktury. přednáška
5. Úvod do booleovské algebry, podmínky. přednáška
6. Stavební prvky algoritmu: cykly, metody. přednáška
7. Rekurze. přednáška
8. Výjimky. Práce se soubory. přednáška
9, 10, 11 Úvod do OOP přednáška


  

 

 

 

 

 

Cvičení:

Praktická aplikace poznatků při tvorbě programů v jazyce Python. Součástí každé úlohy bude:

  1. technická zpráva se zadáním (v papírové i v elektronické formě),
  2. zdrojový kód aplikace,
  3. vstupní/výstupní data,
  4. přeložená funkční aplikaceve formě binárního souboru. Za nefunkční bude aplikace považována, pokud:
  • při zpracování dat dojde k pádu (runtime chyby, ...),
  • dává špatné výsledky,
  • nevrací systémové prostředky (memory leaks, ...).

Technická zpráva bude obsahovat:

  1. Zadání
  2. Popis a rozbor problému + vzorce
  3. Popisy algoritmů formálnímm jazykem
  4. Problematické situace a jejich rozbor + ošetření těchto situací v kódu
  5. Vstupní data, formát vstupních dat, popis
  6. Výstupní data, formát výstupních da, popis
  7. Dokumentaci
  8. Závěr, možné či neřešené problémy, náměty na vylepšení
  9. Seznam literatury.

Zadání úloh:

  • Zadání 1 zde.
  • Zadání 2 zde.
  • Zadání3 zde.

Hodnocení výsledků zde, 

Zdrojový kód, cvičení:

  • Cvičení 3: Jednoduché příkazy (dms, výčetka platidel, zaokrouhlení) zde.
  • Cvičení 4: Podmínky (setřídění 3 čísel různými metodami) zde.
  • Cvičení 5: Cykly (aritmetický průměr + směrodatná odchylka, prvočísla, select sort, bubble sort) zde.
  • Cvičení 6: Metody (Eratosthenovo síto, třídění, plocha mnohoúhelníku, duplicitní prvky v poli)

Podmínky udělení zápočtu:

  • Včasné odevzdání úloh
  • Účast na cvičeních

Zkouška:

Výběr dvou témat z níže uvedeného seznamu a jejich zpracování.
Otázky ke zkoušce zde, stav k 23.1.2019.
Nutno zpracovat do konce zkouškového období ZS 1018-19.

Ukázkové aplikace:

  • RSA šifra. Stručný popis + ukázkový kód kód.

Literatura:

Přednášky:
[1] VIRIUS M.: Základy algoritmizace,2004,Vydavatelství ČVUT
[2] JANČAR P.: Teoretická informatika, 2007, VŠB, Ostrava
[3] WROBLEWSKI P.: Algoritmy,datové struktury a programovací techniky, 2004,Computer Press
[4] JOKL E.,ŠIBRAVA Z.,VOSPĚL Z.: Programování1,1990,Vydavatelství ČVUT


Cvičení:

[1] Summerfield M.: Python 3, Computer Press, 2012
[2] Pilgrim M.: Ponořme se do Pythonu 3, CZ NIC, 2010: on-line diveintopython3.py.cz/index.html