IB111 Základy programování

Fakulta informatiky
podzim 2019
Rozsah
2/2/1. 4 kr. (plus ukončení). Ukončení: zk.
Vyučující
RNDr. Nikola Beneš, Ph.D. (přednášející)
RNDr. Mgr. Jaroslav Bayer (cvičící)
doc. RNDr. Jan Bouda, Ph.D. (cvičící)
Zdenko Čepan (cvičící)
Mgr. David Dobrovolný (cvičící)
doc. RNDr. Vlastislav Dohnal, Ph.D. (cvičící)
RNDr. Antonín Dufka (cvičící)
Mgr. Jan Horáček (cvičící)
Ing. Miroslav Kadlec (cvičící)
Mgr. Jan Koniarik (cvičící)
Mgr. Lukáš Korenčik (cvičící)
Mgr. Roman Lacko (cvičící)
Mgr. František Lachman (cvičící)
Mgr. et Mgr. Dominika Lauko (cvičící)
RNDr. Henrich Lauko (cvičící)
RNDr. Filip Lux (cvičící)
doc. RNDr. Martin Maška, Ph.D. (cvičící)
doc. RNDr. Pavel Matula, Ph.D. (cvičící)
doc. RNDr. Petr Matula, Ph.D. (cvičící)
Mgr. Peter Navrátil (cvičící)
RNDr. Petr Ročkai, Ph.D. (cvičící)
doc. Mgr. Pavel Rychlý, Ph.D. (cvičící)
Mgr. Martin Stančík (cvičící)
Mgr. Miloslav Staněk (cvičící)
Mgr. Peter Stanko (cvičící)
Mgr. Marek Sýs, Ph.D. (cvičící)
RNDr. Valdemar Švábenský, Ph.D. (cvičící)
RNDr. Matej Troják, Ph.D. (cvičící)
Mgr. Tatiana Zbončáková (cvičící)
Jakub Žák (cvičící)
Bc. Martin Bendel (cvičící)
Mgr. Martina Cvinčeková (cvičící)
Mgr. Bruno Čičmanec (cvičící)
Mgr. Ján Dovjak (cvičící)
Dominik Dubravický (cvičící)
Bc. Matej Focko (cvičící)
Mgr. Sandra Galovičová (cvičící)
Mgr. Samuel Gorta (cvičící)
Mgr. Jakub Hanko (cvičící)
Mgr. Adam Ivora (cvičící)
Bc. Dominik Jochec (cvičící)
Mgr. Tomáš Kancko (cvičící)
Mgr. Jakub Bartolomej Košuth (cvičící)
Mgr. Nastasia Kovářová (cvičící)
Mgr. Ivana Krumlová (cvičící)
Mgr. Vincent Mihalkovič (cvičící)
Ing. Erik Moravec (cvičící)
Mgr. Imrich Nagy (cvičící)
Bc. Tomáš Novotný (cvičící)
Bc. Matěj Pavlík (cvičící)
Mgr. Adam Považanec (cvičící)
RNDr. Daniel Reitzner, PhD. (cvičící)
Mgr. Anna Řechtáčková (cvičící)
Mgr. Radoslav Sabol (cvičící)
Mgr. Mária Švidroňová (cvičící)
Mgr. Daniel Zaťovič (cvičící)
Mgr. Petr Zelina (cvičící)
Mgr. Vojtěch Jelínek (pomocník)
Bc. Ivan Mitruk (pomocník)
Mgr. Adam Štěpánek (pomocník)
RNDr. Vladimír Štill, Ph.D. (pomocník)
Garance
RNDr. Nikola Beneš, Ph.D.
Katedra počítačových systémů a komunikací – Fakulta informatiky
Dodavatelské pracoviště: Katedra počítačových systémů a komunikací – Fakulta informatiky
Rozvrh
Po 16. 9. až Čt 12. 12. Čt 16:00–17:50 D2, Čt 16:00–17:50 D3, Čt 16:00–17:50 D1
  • Rozvrh seminárních/paralelních skupin:
IB111/01: Út 16:00–17:50 B117, J. Bayer
IB111/01_nahrada: Rozvrh nebyl do ISu vložen. J. Bayer
IB111/02: Út 14:00–15:50 B117, J. Bayer
IB111/02_nahrada: Rozvrh nebyl do ISu vložen. J. Bayer
IB111/03: St 10:00–11:50 B117, J. Bayer
IB111/03_nahrada: Rozvrh nebyl do ISu vložen. J. Bayer
IB111/04: Po 10:00–11:50 B117, V. Dohnal
IB111/05: Po 8:00–9:50 B117, V. Dohnal, I. Nagy
IB111/06: Po 16:00–17:50 B117, M. Kadlec
IB111/07: St 16:00–17:50 B116, M. Kadlec
IB111/07_nahrada: Rozvrh nebyl do ISu vložen. M. Kadlec
IB111/08: Po 8:00–9:50 B130, F. Lachman, M. Pavlík
IB111/09: Po 10:00–11:50 A219, F. Lachman
IB111/10: St 12:00–13:50 B116, F. Lux
IB111/10_nahrada: Rozvrh nebyl do ISu vložen. F. Lux
IB111/11: Pá 12:00–13:50 B311, B. Čičmanec, M. Maška
IB111/11_nahrada: Rozvrh nebyl do ISu vložen. B. Čičmanec, M. Maška
IB111/12: St 12:00–13:50 A215, P. Matula
IB111/12_nahrada: Rozvrh nebyl do ISu vložen. P. Matula
IB111/13: Út 8:00–9:50 A215, P. Matula
IB111/13_nahrada: Rozvrh nebyl do ISu vložen. P. Matula
IB111/14: St 16:00–17:50 A219, M. Troják
IB111/14_nahrada: Rozvrh nebyl do ISu vložen. M. Troják
IB111/15: Po 18:00–19:50 A219, M. Troják
IB111/16: Pá 12:00–13:50 A219, J. Bouda, D. Reitzner
IB111/16_nahrada: Rozvrh nebyl do ISu vložen. J. Bouda, D. Reitzner
IB111/17: Út 14:00–15:50 A215, Z. Čepan, N. Kovářová
IB111/17_nahrada: Rozvrh nebyl do ISu vložen. Z. Čepan, N. Kovářová
IB111/18: Út 12:00–13:50 A215, Z. Čepan, N. Kovářová
IB111/18_nahrada: Rozvrh nebyl do ISu vložen. Z. Čepan, N. Kovářová
IB111/19: Pá 10:00–11:50 B116, D. Dobrovolný, T. Novotný
IB111/20: Po 18:00–19:50 A215, D. Dobrovolný, I. Krumlová
IB111/21: St 18:00–19:50 A215, A. Dufka, J. Košuth
IB111/21_nahrada: Rozvrh nebyl do ISu vložen. A. Dufka, J. Košuth
IB111/22: Čt 10:00–11:50 A219, J. Horáček, A. Řechtáčková
IB111/22_nahrada: Rozvrh nebyl do ISu vložen. J. Horáček, A. Řechtáčková
IB111/23: Čt 18:00–19:50 A219, S. Gorta, J. Koniarik
IB111/23_nahrada: Rozvrh nebyl do ISu vložen. S. Gorta, J. Koniarik
IB111/24: Po 10:00–11:50 B130, L. Korenčik, P. Zelina
IB111/25: Út 16:00–17:50 A215, D. Lauko, E. Moravec
IB111/25_nahrada: Rozvrh nebyl do ISu vložen. D. Lauko, E. Moravec
IB111/26: Pá 12:00–13:50 B130, R. Lacko, R. Sabol
IB111/26_nahrada: Rozvrh nebyl do ISu vložen. R. Lacko, R. Sabol
IB111/27: St 8:00–9:50 B130, H. Lauko, M. Švidroňová
IB111/27_nahrada: Rozvrh nebyl do ISu vložen. H. Lauko, M. Švidroňová
IB111/28: Út 14:00–15:50 A219, A. Ivora, H. Lauko
IB111/28_nahrada: Rozvrh nebyl do ISu vložen. A. Ivora, H. Lauko
IB111/29: Út 18:00–19:50 A219, S. Galovičová, P. Navrátil
IB111/29_nahrada: Rozvrh nebyl do ISu vložen. S. Galovičová, P. Navrátil
IB111/30: Út 12:00–13:50 A219, J. Dovjak, P. Ročkai
IB111/30_nahrada: Rozvrh nebyl do ISu vložen. J. Dovjak, P. Ročkai
IB111/31: St 8:00–9:50 A219, D. Dubravický, M. Stančík
IB111/31_nahrada: Rozvrh nebyl do ISu vložen. D. Dubravický, M. Stančík
IB111/32: Čt 12:00–13:50 A215, T. Kancko, A. Považanec, M. Stančík
IB111/32_nahrada: Rozvrh nebyl do ISu vložen. T. Kancko, A. Považanec, M. Stančík
IB111/33: Út 8:00–9:50 A219, M. Focko, M. Staněk
IB111/33_nahrada: Rozvrh nebyl do ISu vložen. M. Focko, M. Staněk
IB111/34: St 18:00–19:50 A219, M. Bendel, M. Staněk
IB111/34_nahrada: Rozvrh nebyl do ISu vložen. M. Bendel, M. Staněk
IB111/35: Po 16. 9. až Út 10. 12. Út 18:00–19:50 B130, D. Jochec, P. Stanko
IB111/35_nahrada: Rozvrh nebyl do ISu vložen. D. Jochec, P. Stanko
IB111/36: Po 16:00–17:50 A215, M. Cvinčeková, B. Čičmanec, V. Švábenský
IB111/37: Po 14:00–15:50 A215, V. Mihalkovič, V. Švábenský
IB111/38: Po 14:00–15:50 A219, L. Korenčik, T. Zbončáková
IB111/39: Po 18:00–19:50 B116, D. Zaťovič, T. Zbončáková
IB111/40: Čt 8:00–9:50 B130, J. Hanko, J. Žák
IB111/40_nahrada: Rozvrh nebyl do ISu vložen. J. Hanko, J. Žák
IB111/41: Čt 8:00–9:50 A219, M. Sýs
IB111/41_nahrada: Rozvrh nebyl do ISu vložen. M. Sýs
IB111/42: St 14:00–15:50 A219, P. Rychlý
IB111/42_nahrada: Rozvrh nebyl do ISu vložen. P. Rychlý
Předpoklady
! IB113 Úvod do progr. a algoritmizace && ! NOW ( IB113 Úvod do progr. a algoritmizace )
Předmět je určen primárně studentům informatických programů. Ostatním studentům je doporučeno zapsat si předmět IB113.
Omezení zápisu do předmětu
Předmět je určen pouze studentům mateřských oborů.
Mateřské obory/plány
předmět má 48 mateřských oborů, zobrazit
Cíle předmětu
Předmět poskytuje systematické pokrytí základů programování. Pro výklad a cvičení je použit konkrétní programovací jazyk (Python), předmět se však zaměřuje na obecné principy uplatnitelné v mnoha různých programovacích jazycích.
Výstupy z učení
Po ukončení předmětu by studenti měli být schopni: používat základní programátorské konstrukce (např. podmínky, cykly, funkce, základní datové typy); napsat a odladit program v jazyce Python o rozsahu přibližně 200 řádků kódu; používat základní datové typy a struktury (řetězce, seznamy, slovníky); popsat několik základních algoritmů; popsat hlavní konvence a doporučený programátorský styl.
Osnova
  • Předmět ilustruje základní prvky imperativního programování a algoritmického myšlení skrze vysokoúrovňový jazyk Python a za bohatého použití ilustrativních příkladů.
  • Základní konstrukce imperativních programovacích jazyků: podmínky, cykly, základní datové typy, funkce, vstup a výstup.
  • Výpočty s čísly, číselné typy, využití náhody.
  • Datové struktury, seznamy, řetězce, vícerozměrná pole, slovníky, základy použití objektů.
  • Příklady základních algoritmů: největší společný dělitel, prvočísla, řadicí algoritmy, vyhledávání. Využití rekurze.
  • Želví grafika, bitmapová grafika, práce s textem.
  • Návrh programů, programátorské konvence, úprava kódu.
Literatura
    doporučená literatura
  • PELÁNEK, Radek. Programátorská cvičebnice: algoritmy v příkladech. Brno: Computer Press, 2012. 175 s. ISBN 978-80-251-3751-2. info
  • GUZDIAL, Mark a Barbara ERICSON. Introduction to computing & programming in Python : a multimedia approach. 2nd ed. Upper Saddle River [N.J.]: Prentice Hall, 2010. xxiii, 401. ISBN 9780136060239. info
  • ZELLE, John M. Python programming : an introduction to computer science. Wilsonville: Franklin, Beedle &Associates, 2004. xiv, 514. ISBN 1887902996. info
Výukové metody
přednášky, povinná cvičení u počítače, domácí úkoly (příklady k programování)
Metody hodnocení
Hodnocení se skládá ze 3 částí: průběžné domácí úkoly, programátorské testy u počítače v průběhu a na závěr semestru, závěrečná písemná zkouška.
Informace učitele
http://www.fi.muni.cz/IB111/
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Nachází se v prerekvizitách jiných předmětů
Předmět je zařazen také v obdobích podzim 2009, podzim 2010, podzim 2011, podzim 2012, podzim 2013, podzim 2014, podzim 2015, podzim 2016, podzim 2017, podzim 2018, podzim 2020, podzim 2021, podzim 2022, podzim 2023.