Programování pro deskriptivní geometrii I - NMTD103
Anglický název: Computer programming for descriptive geometry I
Podoba výuky: seminář
Zajišťuje: Katedra didaktiky matematiky (32-KDM)
Fakulta: Matematicko-fyzikální fakulta
Platnost: od 2023
Počet semestrů výuky: 1
Semestr: zimní
E-Kredity: 3
Rozsah, examinace: zimní s.:0/2, Z [HT]
Počet míst: neomezen
Maximální kapacita předmětu: neomezen
Minimální obsazenost: neomezen
4EU+: ne
Virtuální mobilita / počet míst pro virtuální mobilitu: ne
Stav předmětu: vyučován
Jazyk výuky: čeština
Forma uskutečňování: prezenční
Možnost opakovaného zápisu: 2 / 2 / 2 / 2
Garant: doc. RNDr. Pavel Töpfer, CSc.
doc. RNDr. Antonín Slavík, Ph.D., DSc.
Vyučující: doc. RNDr. Pavel Töpfer, CSc.
Neslučitelnost : NMIN111, NMUG103, NPRG030
Záměnnost : NMIN111, NMUG103, NPRG030
Je korekvizitou pro: NMTD104
Je neslučitelnost pro: NMUG103, NMIN111
Je záměnnost pro: NMUG103
Výsledky anket   Rozvrh ZS   Nástěnka   
Anotace -
Seminář pro 1. ročník bakalářského studia. Obsahem kursu jsou základy programování v jazyce Python.
Poslední úprava: Töpfer Pavel, doc. RNDr., CSc. (18.05.2022)
Podmínky zakončení předmětu -

Předmět je zakončen zápočtem. Zápočet je udělován na základě prokázání schopnosti samostatně navrhovat, implementovat a upravovat programová řešení, přičemž samostatným návrhem se rozumí vlastní tvorba algoritmu a programu bez využití nástrojů pro automatické generování kódu.

K získání zápočtu se požaduje

  • aktivní účast na cvičeních spočívající v řešení úkolů (programů) v termínech stanovených cvičícím (ať už na cvičení nebo doma). Požaduje se získání alespoň 70% bodů za průběžně zadávané domácí úkoly, přičemž vyučující může stanovit podmínky, za nichž student může nahradit chybějící body za domácí úkoly.
  • úspěšné absolvování písemných testů zadávaných prezenčně na cvičeních během semestru. V případě neúspěchu má student možnost jedné opravy každého z těchto písemných testů.

Poslední úprava: Töpfer Pavel, doc. RNDr., CSc. (25.09.2026)
Literatura -

John V. Guttag, Introduction to Computation and Programming Using Python: With Application to Understanding Data, 2nd ed.,, MIT Press, Cambridge, MA 2016

Allen B. Downey, Think Python: How to Think Like a Computer Scientist, 2nd ed., O'Reilly Media, Sebastopol, CA 2015

Poslední úprava: Töpfer Pavel, doc. RNDr., CSc. (10.07.2022)
Sylabus -
Základy programovacího jazyka Python
  • Python jako kalkulačka
  • celá čísla
  • float a problémy s přesností
  • operátory a jejich priority
  • přiřazení
  • základní podmínky a cykly (while)
  • struktura programu: komentáře, odsazování
  • triviální input() a print()
  • ladění programu, používání vývojového prostředí
  • for cykly, range()
  • break, continue
  • seznamy používané jako pole
  • přiřazení seznamu přiřazuje pouze odkaz
  • definice a volání funkcí
  • nepovinné parametry
  • abstrakce a modularita programů
  • lokální identifikátory a jejich viditelnost
  • seznamy a operace s nimi
  • iterování přes seznam
  • řezy
  • list comprehension
  • string
  • n-tice (tuples)
  • slovníky a operace s nimi
  • výjimky a jejich odchytávání
  • práce se soubory
  • používání knihoven, import
  • standardní knihovna

Základní algoritmy

  • rozklad čísla na číslice
  • Eukleidův algoritmus
  • prvočísla dělením do odmocniny
  • faktorizace
  • k-tý nejmenší prvek v čase k*n
  • násobení matic

Poslední úprava: Töpfer Pavel, doc. RNDr., CSc. (25.09.2026)