Charles Explorer logo
🇨🇿

Základy programování a algoritmů

Předmět na Filozofická fakulta |
ALG119000

Sylabus

0) Úvod, historie 1) Jednoduché programy  

Práce s čísly

Práce s řetězci

Použití objektů   2) Složitější techniky   funkce (procedury) if/elif/else; výjimky použití cyklů   3) Návrh programu   návrh programu (top-down design) simulace základy návrhu tříd (objektů) složitější datové typy (pole, asociativní pole)   5) Základy objektově orientovaného programování   data encapsulation polymorphism inheritance 6) Algoritmy & Složitost  

Linear a Binary search

Rekurze

Třídící algoritmy

Backtracking

Halting problém & diagonalizace 

Anotace

Cílem kurzu je seznámit studenta se základními "praktickými" pojmy programování (datový typ, proměnná, procedura, algoritmus aj.) a naznačit způsoby, jakými lze tyto pojmy teoreticky zkoumat (složitost, Turingův stroj...).

Student by po absolvování kurzu měl být schopný samostatně navrhnout, napsat a "odladit" plně funkční jednoduchý program v jazyce Python. Měl by mít povědomí o standardních algoritmech a rozumět pojmu složitosti. Součástí kurzu jsou i praktická cvičení na počítači.