Detail předmětu
Úvod do programování
FEKT-BPC-UDPAk. rok: 2025/2026
První část předmětu je zaměřena na seznámení studentů se způsoby uložení čísel v počítači (celá čísla se znaménkem, čísla s pohyblivou řádovou čárkou, standard IEEE 754-2008, BFloat16), binární aritmetikou, kódováním znaků (ASCII, ISO-8859-X, Windows-1250, UNICODE), vysvětlení Von Neumannových principů fungování počítače. Druhá část předmětu se věnuje základům programování v jazyce C. Studenti by se měli naučit používat: jednoduché proměnné a složené proměnné (pole a struktury), operátory, přiřazovací příkazy, příkazy větvení, příkazy cyklů a funkce. Dále by se měli naučit pracovat s řetězci znaků, funkcemi pro V/V a lokalizovaným prostředím.
Jazyk výuky
Počet kreditů
Garant předmětu
Zajišťuje ústav
Pravidla hodnocení a ukončení předmětu
Až 50 bodů za závěrečnou zkoušku. Minimální požadovaný počet bodů ze závěrečné zkoušky je 20 bodů.
Počítačová cvičení jsou povinná, řádně omluvené zmeškané počítačové cvičení lze po domluvě s vyučujícím nahradit.
Učební cíle
Absolvent zná:
- Vyjádření čísel v binární, oktálové a hexadecimální číselné soustavě. Převody mezi číselnými soustavami.
- Reprezentaci záporných celých čísel a reprezentaci reálných čísel v počítači.
- Operace v binární soustavě.
- Kódování znaků a kódováním binárních dat pomocí tisknutelných znaků.
- Základní principy fungování Von Neumannova počítače.
- Syntaxi a sémantiku jazyka C.
Absolvent je schopen vytvořit jednoduchý program v jazyce C.
Základní literatura
Doporučená literatura
KERNIGHAN, B. W., RITCHIE, D. M.: Programovací jazyk C. Brno: Computer Press, 2006. 286 s. ISBN 80-251-0897-X. (CS)
Zařazení předmětu ve studijních plánech
- Program BPC-AMT bakalářský 1 ročník, zimní semestr, povinný
Typ (způsob) výuky
Přednáška
Vyučující / Lektor
Osnova
2. Uložení reálných čísel v počítači (standard IEEE 754-2008, BFloat16). BCD kód. Kódování znaků: jednobytové znakové sady (ASCII, ISO-8859-X, Windows-1250), Unicode Standard.
3. Unicode Standard – formy kódování znaků UTF-32, UTF-16, UTF-8. Von Neumannovy principy a koncepce počítače. Algoritmus, program, proměnná, datový typ. Programovací a značkovací jazyky. Rozdělení programovacích jazyků. Historie, charakteristika, použití a standardy jazyka C. Struktura programu v jazyce C. Zpracování zdrojového souboru preprocesorem, překlad a linkování.
4. Jazyk C: Znakové sady. Komentáře. Identifikátory. Přehled datových typů. Aritmetické datový typy. Celočíselné konstanty.
5. Jazyk C: Konstanty s pohyblivou řádovou čárkou. Znakové konstanty. Řetězcové konstanty. Výrazy a operátory. Aritmetické operátory a operátory přiřazení.
6. Jazyk C: Operátory inkrementace a dekrementace. Definice, deklarace a inicializace proměnných. Výrazový příkaz. Složený příkaz. Příkazy větvení. Operátory porovnání. Logické operátory. Podmíněný výraz. Iterační příkazy.
7. Jazyk C: Příkazy skoků break a continue. Datový typ pole. Funkce (důvody používání, definice, deklarace, volání ). Inline funkce.
8. Datový typ struktura. Preprocesor (makra, makra s parametry, podmíněný překlad, hlavičkové soubory).
9. Jazyk C: Datový typ ukazatel. Ukazatele na struktury. Ukazatelé jako parametry funkcí, předávání parametrů hodnotou a odkazem. Ukazatelé a pole.
10. Ukazatelová aritmetika. Indexování ukazatelů. Pole jako parametr funkce. VLA. Pole struktur. Dynamická alokace paměti.
11. Jazyk C: Kvalifikátory const a restrict. Soubory. Standardní knihovní funkce pro vstupy a výstupy.
12. Jazyk C: Standardní knihovní funkce pro vstupy a výstupy . Řetězce znaků (strings). Lokalizace. Pole ukazatelů. Funkce main().
13. Pole ukazatelů. Funkce main().
Cvičení na počítači
Vyučující / Lektor
Osnova
2. Příklady na sčítání a odčítání čísel ve dvojkové soustavě. Příklady na reprezentaci čísel v přímém binárním kódu (sign-magnitude), v 1. a 2. doplňku a v kódu s posunutou nulou.
3. Příklady na násobení a dělení čísel ve dvojkové soustavě. Příklady na vyjádření čísel s pohyblivou řádovou čárkou dle standardu IEEE 754-2008 a ve formátu BFloat16. Příklady na kódování znaků dle standardů ASCII, ISO-8859-2 a UNICODE (UTF-32, UTF-16, UTF-8).
4. Příklady na popis algoritmu pomocí vývojového diagramu.
5. Seznámení s vývojovým prostředím MS Visual Studio 2022 a laděním programů. Funkce main(), návratové kódy programů. Vstup z klávesnice ,výstup na obrazovku, velikosti jednoduchých datových typů.
6. Příklady na použití operátorů ve výrazech, příkazů if – else a příkazu while.
7. Příklady na práci s poli, použití příkazu for, definici, deklaraci a volání jednoduchých funkcí.
8. Příklady na práci s datovým typem struktura.
9. Test 1.
10. Příklady na základní práci s ukazateli na proměnné a funkce. Příklad na předávání ukazatele na pole do funkcí a práci s VLA. Příklad na dynamickou alokaci paměti.
11. Příklady na použití knihovních funkcí pro ráci se soubory. Příklad na práci s dynamicky alokovaným polem struktur.
12. Příklad na podmíněný překlad a použití maker s parametry. Příklad na práci s vícebytovými (UTF-8) řetězci a locale.
13. Test 2.