IB111 Základy programování

Fakulta informatiky
podzim 2020
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í)
Bc. Martin Bendel (cvičící)
Bc. Stanislav Boboň (cvičící)
doc. RNDr. Jan Bouda, Ph.D. (cvičící)
Mgr. Libor Caha, PhD. (cvičící)
Zdenko Čepan (cvičící)
Mgr. Bruno Čičmanec (cvičící)
Mgr. David Dobrovolný (cvičící)
Mgr. Ján Dovjak (cvičící)
RNDr. Antonín Dufka (cvičící)
Bc. Matej Focko (cvičící)
Mgr. Sandra Galovičová (cvičící)
Mgr. Samuel Gorta (cvičící)
Mgr. Lukáš Gryga (cvičící)
Mgr. Jakub Hanko (cvičící)
Mgr. Jan Horáček (cvičící)
Mgr. Nastasia Juračková (cvičící)
Ing. Miroslav Kadlec (cvičící)
Mgr. Jan Koniarik (cvičící)
Mgr. Lukáš Korenčik (cvičící)
Mgr. Jakub Bartolomej Košuth (cvičící)
Mgr. Ivana Krumlová (cvičící)
Mgr. Roman Lacko (cvičící)
Mgr. František Lachman (cvičící)
Mgr. et Mgr. Dominika Lauko (cvičící)
RNDr. Henrich Lauko, Ph.D. (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í)
Ing. Erik Moravec (cvičící)
Mgr. Imrich Nagy (cvičící)
Mgr. Peter Navrátil (cvičící)
Bc. Tomáš Novotný (cvičící)
RNDr. Daniel Reitzner, PhD. (cvičící)
RNDr. Petr Ročkai, Ph.D. (cvičící)
RNDr. Lukáš Ručka (cvičící)
Mgr. Anna Řechtáčková (cvičící)
Mgr. Peter Stanko (cvičící)
RNDr. Vladimír Štill, Ph.D. (cvičící)
RNDr. Valdemar Švábenský, Ph.D. (cvičící)
RNDr. Vladimír Ulman, Ph.D. (cvičící)
Mgr. Tatiana Zbončáková (cvičící)
Mgr. Petr Zelina (cvičící)
doc. RNDr. Vlastislav Dohnal, 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:00–17:50 D3
  • Rozvrh seminárních/paralelních skupin:
IB111/Nahradni_termin: Pá 16:00–17:50 Virtuální místnost, Z. Čepan, A. Řechtáčková
IB111/01A: St 10:00–11:50 A219, J. Hanko, V. Štill
IB111/01B: Čt 14:00–15:50 Virtuální místnost, F. Lux, T. Zbončáková
IB111/02A: Út 10:00–11:50 B311, I. Krumlová, P. Zelina
IB111/02AFP: Út 10:00–11:50 B311, I. Krumlová, P. Zelina
IB111/02B: St 10:00–11:50 B130, J. Hanko, V. Štill
IB111/02BFP: St 10:00–11:50 B130, J. Hanko, V. Štill
IB111/03A: Po 18:00–19:50 Virtuální místnost, N. Juračková, D. Lauko
IB111/03B: St 14:00–15:50 B130, D. Dobrovolný, L. Gryga
IB111/03BFP: St 14:00–15:50 B130, D. Dobrovolný, L. Gryga
IB111/04A: Po 18:00–19:50 Virtuální místnost, N. Juračková, D. Lauko
IB111/04AFP: Po 18:00–19:50 Virtuální místnost, N. Juračková, D. Lauko
IB111/04B: St 16:00–17:50 B117, S. Galovičová, P. Navrátil
IB111/05A: Čt 12:00–13:50 Virtuální místnost, J. Horáček, P. Matula
IB111/05B: St 12:00–13:50 B117, S. Gorta, R. Lacko
IB111/06A: Po 14:00–15:50 B130, S. Boboň, V. Švábenský
IB111/06B: Pá 12:00–13:50 Virtuální místnost, B. Čičmanec, M. Maška
IB111/07A: Čt 18:00–19:50 A219, N. Juračková, V. Ulman
IB111/07B: Po 18:00–19:50 B116, N. Juračková, D. Lauko
IB111/08A: Čt 12:00–13:50 Virtuální místnost, J. Horáček, P. Matula
IB111/08B: Út 10:00–11:50 A219, I. Krumlová, P. Zelina
IB111/09A: Po 14:00–15:50 Virtuální místnost, S. Boboň, V. Švábenský
IB111/09B: Čt 16:00–17:50 B117, L. Korenčik, P. Matula
IB111/10A: St 10:00–11:50 Virtuální místnost, J. Hanko, V. Štill
IB111/10B: Čt 18:00–19:50 A215, N. Juračková, V. Ulman
IB111/11A: Čt 14:00–15:50 Virtuální místnost, F. Lux, T. Zbončáková
IB111/11B: Út 10:00–11:50 A215, I. Krumlová, P. Zelina
IB111/11BFP: Út 10:00–11:50 A215, I. Krumlová, P. Zelina
IB111/12A: St 12:00–13:50 B130, S. Gorta, R. Lacko
IB111/12AFP: St 12:00–13:50 B130, S. Gorta, R. Lacko
IB111/12B: St 14:00–15:50 A219, D. Dobrovolný, L. Gryga
IB111/12BFP: St 14:00–15:50 A219, D. Dobrovolný, L. Gryga
IB111/13A: Čt 14:00–15:50 Virtuální místnost, F. Lux, T. Zbončáková
IB111/13AFP: Čt 14:00–15:50 Virtuální místnost, F. Lux, T. Zbončáková
IB111/13B: St 12:00–13:50 Virtuální místnost, S. Gorta, R. Lacko
IB111/13BFP: St 12:00–13:50 Virtuální místnost, S. Gorta, R. Lacko
IB111/14A: Čt 12:00–13:50 Virtuální místnost, J. Horáček, P. Matula
IB111/14B: Čt 16:00–17:50 Virtuální místnost, L. Korenčik, P. Matula
IB111/14BFP: Čt 16:00–17:50 Virtuální místnost, L. Korenčik, P. Matula
IB111/15A: Čt 10:00–11:50 B116, J. Horáček, L. Ručka
IB111/15B: Pá 12:00–13:50 Virtuální místnost, B. Čičmanec, M. Maška
IB111/15BFP: Pá 12:00–13:50 Virtuální místnost, B. Čičmanec, M. Maška
IB111/16A: Čt 10:00–11:50 B130, J. Horáček, L. Ručka
IB111/16AFP: Čt 10:00–11:50 B130, J. Horáček, L. Ručka
IB111/16B: St 18:00–19:50 A219, S. Galovičová, P. Navrátil
IB111/16BFP: St 18:00–19:50 A219, S. Galovičová, P. Navrátil
IB111/17A: Čt 10:00–11:50 Virtuální místnost, J. Horáček, L. Ručka
IB111/17B: Pá 12:00–13:50 A219, B. Čičmanec, M. Maška
IB111/17BFP: Pá 12:00–13:50 A219, B. Čičmanec, M. Maška
IB111/18A: Čt 16:00–17:50 A215, L. Korenčik, P. Matula
IB111/18AFP: Čt 16:00–17:50 A215, L. Korenčik, P. Matula
IB111/18BFP: St 18:00–19:50 Virtuální místnost, S. Galovičová, P. Navrátil
IB111/19AFP: St 16:00–17:50 A219, S. Galovičová, P. Navrátil
IB111/19B: Čt 18:00–19:50 Virtuální místnost, N. Juračková, V. Ulman
IB111/19BFP: Čt 18:00–19:50 A219, N. Juračková, V. Ulman
IB111/20FP: St 14:00–15:50 A215, D. Dobrovolný, L. Gryga
IB111/21FP: St 16:00–17:50 A215, S. Galovičová, P. Navrátil
IB111/22FP: St 18:00–19:50 Virtuální místnost, S. Galovičová, P. Navrátil
IB111/23FP: Po 14:00–15:50 A219, S. Boboň, V. Švábenský
IB111/24FP: Po 18:00–19:50 Virtuální místnost, N. Juračková, D. Lauko
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á 18 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 2019, podzim 2021, podzim 2022, podzim 2023, podzim 2024.