Detail předmětu

Základy programování

IZP Ak. rok 2025/2026 zimní semestr 7 kreditů

Základní programovací konstrukty vyššího programovacího jazyka: proměnné, typy, výrazy, řídicí struktury, procedury a funkce, předávání parametrů, vstupy/výstupy, zpracování výjimečných stavů. Základní datové struktury: primitivní datové typy, strukturované datové typy: pole, záznam, soubor, znakové řetězce. Dynamické datové struktury, typ ukazatel. Strategie pro volbu vhodné datové struktury. Rekurze, pojem rekurze. Globální a lokální proměnné. Jednoduché rekurzivní funkce (procedury). Modulární návrh a abstrakce. Ladění, testování a dokumentace programu. Pojmy a algoritmy budou ilustrovány využitím vhodného programovacího jazyka (ISO/IEC 9899:1999 Programming languages - C).

Garant předmětu

Koordinátor předmětu

Jazyk výuky

česky, anglicky

Zakončení

zápočet+zkouška (písemná)

Rozsah

  • 39 hod. přednášky
  • 12 hod. seminář
  • 20 hod. pc laboratoře
  • 7 hod. projekty

Bodové hodnocení

  • 54 bodů závěrečná zkouška (písemná část)
  • 12 bodů půlsemestrální test (písemná část)
  • 10 bodů numerická cvičení
  • 24 bodů projekty

Zajišťuje ústav

Přednášející

Cvičící

Cíle předmětu

Seznámit se s organizací dat při řešení problémů. Aktivně ovládnout základní algoritmy a umět je aplikovat v praktických problémech. Naučit se vytvářet programy ve vyšších programovacích jazycích.  Osvojit si odborné pojmy z oblasti programování. Seznámit se s principy testování programů. Naučit se používat prostředky pro ladění programů. Naučit se dokumentovat, obhajovat a prezentovat dosažené výsledky.

Student se naučí řešit jednoduché problémy na počítači formou projektů. Naučí se vytvářet programovou dokumentaci a obhájit výsledky řešeného projektu.

Požadované prerekvizitní znalosti a dovednosti

Předmět je zařazen v zimním semestru prvního ročníku bakalářského studijního programu. U studentů se proto předpokládají pouze běžné znalosti matematiky a práce s počítačem na úrovni střední školy.

Literatura studijní

  • McConnell, S.: Code Complete, Microsoft Press, 2004, ISBN 0735619670.
  • Kernighan, B., W., Ritchie, D., M.: Programovací jazyk C, Computer Press, Brno, 2006, ISBN 80-251-0897-X.
  • Herout, P.: Učebnice jazyka C, Kopp, České Budějovice, 2009, 6. vyd., ISBN 978-80-7232-383-8.

Literatura referenční

  • BS ISO/IEC 9899:2011, Information technology. Programming languages. C, 2012, ISBN 978 0 580 80165 5. 
  • Cormen, T.: Introduction to Algorithms, The MIT Press, 2001, ISBN 0262032937. 
  • Kadlec, V.: Učíme se programovat v jazyce C, Computer Press, Praha, 2005, ISBN 80-7226-715-9. 

Osnova přednášek

  1. Principy činnosti programu, datové typy, proměnné
  2. Skladba programu, řídicí struktury
  3. Soubory, pole, strukturované datové typy
  4. Tvorba funkcí, datový typ ukazatel
  5. Verzování, ladění programů
  6. Vektory a matice.
  7. Dynamické datové struktury.
  8. Vyhledávání a řazení.
  9. Pokročilé ladění programů, verifikace a validace.
  10. Rekurze v programování.
  11. Modulární stavba programů
  12. Algoritmizace, stavové automaty
  13. Rekurentní a numerické výpočty

Osnova seminářů

  1. Vývojové nástroje.
  2. Základní práce s polem, řetězec, manuálové stránky.
  3. Práce s polem, funkce.
  4. Standardní vstup a výstup, čtení z/zápis do souboru.
  5. Ladění programů.
  6. Iterační výpočty.
  7. Řídicí smyčka, automat.
  8. Dynamická alokace paměti.
  9. Rekurze.
  10. Pokročilé ladění a dokumentace.
  11. Dynamické struktury.
  12. Modulární stavba programů.

Osnova počítačových cvičení

  1. První programy a základní konstrukce
  2. Cyklus, první práce s poli
  3. Řetězce
  4. Funkce a vnořené cykly
  5. Datové struktury
  6. Úvod do ukazatelů
  7. Práce s ukazateli
  8. Dynamická alokace, ladicí techniky a nástroje
  9. Algoritmizace, rekurze
  10. Strukturované datové typy

Osnova ostatní - projekty, práce

  1. Práce s textem.
  2. Práce s datovými strukturami.

Průběžná kontrola studia

  • Cvičení na počítači: Student může během semestru získat 10 bodů. Obvykle na každém z 10 cvičení může student získat 1 bod za svoji aktivní účast. Formu a podmínky nahrazování zameškané výuky stanoví cvičící.
  • Vypracování projektů: V průběhu výuky se ve stanovených termínech odevzdávají 2 projekty, za které je možné získat celkem 24 bodů. Zadání projektů bude zpřístupněno nejpozději 2 týdny před termínem odevzdání.
  • Půlsemestrální test: Během semestru proběhne písemný test, za který student může získat 12 bodů. Půlsemestrální test nemá náhradní termín.
  • Zápočet: Pro získání zápočtu musí student v součtu ze cvičení, projektů a půlsemestrálního testu získat alespoň 23 bodů. Zároveň musí získat minimálně 6 bodů za cvičení v laboratořích a 1 bod za každý odevzdaný projekt. V případě odhalení podvodného chování (nedovolená spolupráce na projektu nebo plagiátorství) zápočet nebude udělen a bude zváženo zahájení disciplinárního řízení.
  • Závěrečná písemná zkouška: Písemná zkouška s jedním řádným a dvěma opravnými termíny je hodnocena 54 body. Pro získání bodů ze semestrální zkoušky je nutné zkoušku vypracovat tak, aby byla hodnocena nejméně 23 body. V opačném případě bude zkouška hodnocena 0 body.

Způsob kontaktu s vyučujícím

Vyučující mají vypsané konzultační hodiny.

Rozvrh

DenTypTýdnyMístn.OdDoKapacitaPSKSkupInfo
Po poč. lab 1., 2., 3., 4., 5., 6., 7., 8., 9., 11., 12., 13. výuky N203 08:0009:5020 1BIA 1BIB 2BIA 2BIB xx Hurta
Po poč. lab 1., 2., 3., 4., 5., 6., 7., 8., 9., 11., 12., 13. výuky N203 10:0011:5020 1BIA 1BIB 2BIA 2BIB xx Grézl
Po poč. lab 1., 2., 3., 4., 5., 6., 7., 8., 9., 11., 12., 13. výuky N103 12:0013:5020 1BIA 1BIB 2BIA 2BIB xx Hurta
Po poč. lab 1., 2., 3., 4., 5., 6., 7., 8., 9., 11., 12., 13. výuky N104 12:0013:5020 1BIA 1BIB 2BIA 2BIB xx Kříž
Po poč. lab 1., 2., 3., 4., 5., 6., 7., 8., 9., 11., 12., 13. výuky N203 12:0013:5020 1BIA 1BIB 2BIA 2BIB xx Grézl
Po přednáška 1., 2., 3., 4., 5., 6., 7., 8., 9., 11., 12., 13. výuky D0206 D105 14:0015:50470 1BIA 2BIA 2BIB xx Smrčka
Po poč. lab 1., 2., 3., 4., 5., 6., 7., 8., 9., 11., 12., 13. výuky N103 14:0015:5020 1BIA 1BIB 2BIA 2BIB xx Hurta
Po poč. lab 1., 2., 3., 4., 5., 6., 7., 8., 9., 11., 12., 13. výuky N203 14:0015:5020 1BIA 1BIB 2BIA 2BIB xx Husa
Po poč. lab 1., 2., 3., 4., 5., 6., 7., 8., 9., 11., 12., 13. výuky N103 16:0017:5020 1BIA 1BIB 2BIA 2BIB xx Hurta
Po poč. lab 1., 2., 3., 4., 5., 6., 7., 8., 9., 11., 12., 13. výuky N203 16:0017:5020 1BIA 1BIB 2BIA 2BIB xx Husa
Po poč. lab 1., 2., 3., 4., 5., 6., 7., 8., 9., 11., 12., 13. výuky N203 18:0019:5020 1BIA 1BIB 2BIA 2BIB xx Husa
Út poč. lab 1., 2., 3., 4., 5., 6., 8., 9., 10., 11., 12., 13. výuky N103 08:0009:5020 1BIA 1BIB 2BIA 2BIB xx Grézl
Út poč. lab 1., 2., 3., 4., 5., 6., 8., 9., 10., 11., 12., 13. výuky N103 10:0011:5020 1BIA 1BIB 2BIA 2BIB xx Grézl
Út poč. lab 1., 2., 3., 4., 5., 6., 8., 9., 10., 11., 12., 13. výuky N104 10:0011:5020 1BIA 1BIB 2BIA 2BIB xx Husa
Út poč. lab 1., 2., 3., 4., 5., 6., 8., 9., 10., 11., 12., 13. výuky N103 12:0013:5020 1BIA 1BIB 2BIA 2BIB xx Rozsíval
Út poč. lab 1., 2., 3., 4., 5., 6., 8., 9., 10., 11., 12., 13. výuky N103 14:0015:5020 1BIA 1BIB 2BIA 2BIB xx Grézl
Út poč. lab 1., 2., 3., 4., 5., 6., 8., 9., 10., 11., 12., 13. výuky N104 14:0015:5020 1BIA 1BIB 2BIA 2BIB xx Rozsíval
Út poč. lab 1., 2., 3., 4., 5., 6., 8., 9., 10., 11., 12., 13. výuky N105 14:0015:5020 1BIA 1BIB 2BIA 2BIB xx Husa
Út poč. lab 1., 2., 3., 4., 5., 6., 8., 9., 10., 11., 12., 13. výuky N103 16:0017:5020 1BIA 1BIB 2BIA 2BIB xx Grézl
Út poč. lab 1., 2., 3., 4., 5., 6., 8., 9., 10., 11., 12., 13. výuky N104 16:0017:5020 1BIA 1BIB 2BIA 2BIB xx Zavřel
Út poč. lab 1., 2., 3., 4., 5., 6., 8., 9., 10., 11., 12., 13. výuky N105 16:0017:5020 1BIA 1BIB 2BIA 2BIB xx Husa
Út poč. lab 1., 2., 3., 4., 5., 6., 8., 9., 10., 11., 12., 13. výuky N103 18:0019:5020 1BIA 1BIB 2BIA 2BIB xx Grézl
Út poč. lab 1., 2., 3., 4., 5., 6., 8., 9., 10., 11., 12., 13. výuky N104 18:0019:5020 1BIA 1BIB 2BIA 2BIB xx Zavřel
Út poč. lab 1., 2., 3., 4., 5., 6., 8., 9., 10., 11., 12., 13. výuky N105 18:0019:5020 1BIA 1BIB 2BIA 2BIB xx Husa
St poč. lab výuky N203 08:0009:5020 1BIA 1BIB 2BIA 2BIB xx Grézl
St poč. lab výuky N203 10:0011:5020 1BIA 1BIB 2BIA 2BIB xx Grézl
St poč. lab výuky N103 13:0014:5020 1BIA 1BIB 2BIA 2BIB xx Sedláček
St poč. lab 1., 2., 3., 4., 5., 6., 7., 10., 11., 12., 13. výuky N103 15:0016:5020 1BIA 1BIB 2BIA 2BIB xx Dolejška
St poč. lab 8., 9. výuky N103 15:0016:5020 1BIA 1BIB 2BIA 2BIB xx Zavřel
St přednáška výuky D0206 D105 16:0016:50470 1BIA 2BIA 2BIB xx Smrčka
St poč. lab 1., 2., 3., 4., 5., 6., 7., 10., 11., 12., 13. výuky N103 17:0018:5020 1BIA 1BIB 2BIA 2BIB xx Dolejška
St poč. lab 8., 9. výuky N103 17:0018:5020 1BIA 1BIB 2BIA 2BIB xx Zavřel
St seminář výuky D0206 D105 17:0017:50470 1BIA 2BIA 2BIB 10 - 29 xx Smrčka
St poč. lab výuky N104 18:0019:5020 1BIA 1BIB 2BIA 2BIB xx Sedláček
Čt přednáška 1., 2., 8., 9., 10., 11., 12., 13. výuky D0206 D105 08:0010:50470 1BIB 2BIA 2BIB xx Polčák
Čt přednáška 3., 4., 5., 6., 7. výuky D0206 D105 08:0010:50470 1BIB 2BIA 2BIB xx Květoňová
Čt poč. lab výuky N104 08:0009:5020 1BIA 1BIB 2BIA 2BIB xx Kříž
Čt seminář 1., 2., 3., 4., 5., 6., 10., 11., 12., 13. výuky D0206 D105 11:0011:50470 1BIB 2BIA 2BIB 30 - 49 xx Dolejška
Čt seminář 7., 8., 9. výuky D0206 D105 11:0011:50470 1BIB 2BIA 2BIB 30 - 49 xx Smrčka
Čt poč. lab výuky N103 16:0017:5020 1BIA 1BIB 2BIA 2BIB xx Škarvada
Čt poč. lab výuky N104 16:0017:5020 1BIA 1BIB 2BIA 2BIB xx Kříž
poč. lab výuky N204 08:0009:5020 1BIA 1BIB 2BIA 2BIB xx Veigend
poč. lab výuky N103 10:0011:5020 1BIA 1BIB 2BIA 2BIB xx Husa
poč. lab výuky N204 10:0011:5020 1BIA 1BIB 2BIA 2BIB xx Veigend
poč. lab výuky N103 12:0013:5020 1BIA 1BIB 2BIA 2BIB xx Husa
poč. lab výuky N204 14:0015:5020 1BIA 1BIB 2BIA 2BIB xx Škarvada
poč. lab výuky N103 16:0017:5020 1BIA 1BIB 2BIA 2BIB xx Husa
poč. lab výuky N103 18:0019:5020 1BIA 1BIB 2BIA 2BIB xx Husa

Zařazení předmětu ve studijních plánech

Nahoru