Programování v C
V letním kurzu "Programování v jazyce C" budete seznámeni následujícími oblastmi
- Základy strukturovaného programování v programovacím jazyce C
- Laděním programu pomocí gdb
- Implementací třídících algoritmů (bubble sort, quick sort)
- Implementací vyhledávacích algoritmů
- RLE komprese dat
- Huffmanovo kódování
Doporučená literatura
Herout P., Učebnice jazyka C (I. a II. díl), vydavatelství Kopp (2004)
Press H. W., Teukolsky S. A., Vetterling W. T., and Flannery B. P., Numerical Recepies in C, Cambridge University Press, 1992
Kračmar S., Vogel J., Programovací jazyk C, 1995 (online)
GNU vývojové prostředí
Windows
MinGW - GNU Compiler Collection pro Windows (https://www.mingw.org/)
Notepad++ - textový editor s barevnými schématy syntaxe různých programovacích jazyků (https://notepad-plus-plus.org/)
Linux
gcc - kompilátor zdrojového kódu v C z GNU Compiler Collection (součást každé distribuce Linuxu)
vim - progratorský textový editor (standartní součást každé distribuce Linuxu)
Poznámky a prezentace
Poznámky k přednáškám ( stále se vyvíjejí ;-) )
Prezentace č.1 - Proces sestavování programu, vybrané vývojové nástroje Linuxu
Úkoly
1. Sestavte program který generuje textový soubor obsahující tabulku funkčních hodnot kvadratické funkce f(x)=a*x^2 + b*x + c. Na vstupu programu budou hodnoty parametrů a,b,c, počáteční a konečný bod intervalu volné proměnné x, tj. x1, x2, a počet bodů na které daný interval rozdělíme. Výstupem bude tabulka obsahující dva sloupce. V prvním sloupci bude hodnota proměné x a ve druhém bude příslušná funkční hodnota f(x).
2. Sestavte program, který náhodně vygeneruje číselnou řadu s N prvky a pak tuto řadu setřídí algoritmem buble sort nebo algoritmem quick sort. Výsledek bude směrován na standartní výstup.
3. Sestavte program, který hledá kořeny kubické rovnice a*x^3 + b*x^2 + c*x + d = 0. Na vstupu budou zadány hodnoty parametrů a,b,c,d. Výsledky budou směrovány na standartní výstup.
4. Sestavte program, který vyhledá v daném textovém souboru zadaný řetězec.
5. Sestavte program, který načte nekoprimovanou TGA bitmapu a následně její data zkomprimuje podle RLE schématu..
6. Sestavte program, který načte textový dokument a následně jej zkomprimuje podle Huffmanova komprimačního schématu..