Algoritmus vs. program, způsoby zápisu algoritmu. Etapy řešení algoritmického problému. Základní struktura programů vjazyce C s ukázkami: jednoduché a složené výrazy, přiřazovací příkaz, příkaz vstupu a výstupu, základní struktura programů vjazyce C sukázkami. Pole, podmíněný příkaz, cykly. Lexikální elementy jazyka C. Výrazy, přiřazení. Data - elementární typy, proměnné, operátory. Deklarace, rozsahy platnosti proměnných. Řídicí struktury - příkazy. Odvozené datové typy (ukazatel, pole, struktura, union). Uživatelem definované typy. Funkce, předávání parametrů hodnotou a odkazem, preprocesor jazyka C, práce se soubory. Dynamické přidělování paměti. Práce se znakovými řetězci v C. Projekt v C - práce s více moduly, hlavičkové soubory. Úvod do 2D grafiky. Přehled vybraných knihoven pro práci s 2D grafikou. Úvod do numerických algoritmů - aproximace metodou nejmenších čtverců. Iterační metody hledání kořenů nelineárních rovnic, Algoritmy numerické derivace a integrace - ukázky řešení. Přehled algoritmů třídění. Úvod do algoritmů vyhledávání. Praktický úvod do posuzování kvality algoritmů. Paměťová náročnost algoritmu. Fce časové složitosti, asymptotická složitost. Měření časové náročnosti algoritmu.