Detail předmětu

Počítače a programování 1

FEKT-BPC-PC1TAk. rok: 2019/2020

V předmětu se studenti seznámí s řešením počítačových sítí a řešením a možnostmi univerzitní a fakultní sítě. Součástí výuky v předmětu je seznámení funkcí operačních systémů, jejich službami a souborovými systémy. Předmět je dále zaměřen na získání praktických dovedností algoritmizace úloh a jejich programování v jazyce C dle standardu ANSI do úrovně sestavování vlastních funkcí a jejich využívání.

Jazyk výuky

čeština

Počet kreditů

5

Výsledky učení předmětu

Absolvent předmětu je schopen:
- využívat Informační systém VUT a výukový systém Moodle
- konfigurovat klienty elektronické pošty,
- připojit zařízení k Wi-Fi síti VUT,
- ovládat vývojové prostředí Microsoft Visual Studio,
- naprogramovat základní úlohy v jazyce C dle standardu ANSI do úrovně sestavení a aplikace funkcí,
- ladit program v jazyce C a hledat chyby,
- navrhnout strukturu programu.

Prerekvizity

Jsou požadovány znalosti na úrovni středoškolského studia.

Plánované vzdělávací činnosti a výukové metody

Metody vyučování zahrnují přednášky a cvičení na počítači. Předmět využívá e-learning (Moodle). Student odevzdává jeden samostatný projekt.

Způsob a kritéria hodnocení

Podmínky pro úspěšné ukončení předmětu stanoví každoročně aktualizovaná vyhláška garanta předmětu:

Předmět je ukončen zkouškou. Udělení zkoušky je přitom dáno následujícími podmínkami:
- získání nejméně 50 bodů
- odevzdání a obhájení zápočtového projektu v jaz. C

Hodnocení:
20 bodů: hodnocení počítačových cvičení během semestru (10 cvičení po 2 bodech (1+1) – hodnocena budou cvičení č. 2 až 11)
10 bodů: půlsemestrální test (formou testu na počítači)
20 bodů: zápočtový projekt v jazyce C (ve dvojicích) – obhajoby formou krátké prezentace ve 12. týdnu
50 bodů: písemná zkouška (formou testu na počítači v zápočtovém týdnu)

Osnovy výuky

1. Fakultní počítačová síť, fakultní UNIX server, elektronická pošta, Wi-Fi
2. Vlastnosti algoritmů, notace a zápis algoritmů
3. Návrh a implementace algoritmů. Seznámení s vývojovým prostředím MS Visual Studio 2017
4. Principy vyšších programovacích jazyků. Základní stavební bloky programů
5. Jednoduché datové typy v jazyce C. Jednorozměrná a vícerozměrná pole proměnných. Výrazy a příkazy
6. Typ ukazatel
7. Funkce, parametry funkcí v jazyce C. Předávání hodnot odkazem, předávání hodnotou
8. Řídící struktury. Bloková struktura programu, rozsah platnosti identifikátorů
9. Strukturované datové typy. Výčty
10. Textové soubory, standardní vstup/výstup. Interakce programu s uživatelem
11. Dynamické proměnné. Spojové struktury
12. Numerické metody v programování. Rekurze v programování. Řadicí algoritmy
13. Konzultace k samostaným projektům

Učební cíle

Seznámit studenty se základy počítačových sítí, s architekturou univerzitní a fakultní sítě včetně služeb a s operačními systémy Windows a Unix, jejich službami a souborovými systémy. Seznámit studenty se základy programování a algoritmizace s využitím jazyka ANSI C a vývojového nástroje Visual Studio.

Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky

Vymezení kontrolované výuky a způsob jejího provádění stanoví každoročně aktualizovaná vyhláška garanta předmětu.

Základní literatura

KERNIGHAN, Brian W. a Dennis M. RITCHIE. Programovací jazyk C. Brno: Computer Press, 2006. ISBN 80-251-0897-X. (CS)
Lasser, J. Rozumíme Unixu. Computer Press, 2002. ISBN: 80-7226-706-X (CS)
Prokop, J. Algoritmy v jazyku C a C++. Praha: Grada Publishing, 2008 (CS)
RAIDA, Zbyněk, Irena HLAVIČKOVÁ a Michal POKORNÝ. Počítače a programování 2: přednášky. Vyd. 2., přeprac. V Brně: Vysoké učení technické, Fakulta elektrotechniky a komunikačních technologií, Ústav radioelektroniky, 2007. ISBN 978-80-214-3536-0. (CS)
VIRIUS, Miroslav. Jazyky C a C++: kompletní průvodce. 2., aktualiz. vyd. Praha: Grada, 2011. Knihovna programátora (Grada). ISBN 978-80-247-3917-5. (CS)

Doporučená literatura

PROKOP, Jiří. Algoritmy v jazyku C a C++. 3., aktualizované a rozšířené vydání. Praha: Grada, 2015. Průvodce (Grada). ISBN 978-80-247-5467-3. (CS)

Elearning

Zařazení předmětu ve studijních plánech

  • Program BPC-AUD bakalářský

    specializace AUDB-ZVUK , 1 ročník, zimní semestr, povinný
    specializace AUDB-TECH , 1 ročník, zimní semestr, povinný

  • Program BPC-IBE bakalářský 1 ročník, zimní semestr, povinný
  • Program BPC-TLI bakalářský 1 ročník, zimní semestr, povinný

  • Program EEKR-CZV celoživotní vzdělávání (není studentem)

    obor ET-CZV , 1 ročník, zimní semestr, povinný

Typ (způsob) výuky

 

Přednáška

26 hod., nepovinná

Vyučující / Lektor

Osnova

1. Fakultní počítačová síť, fakultní UNIX server, elektronická pošta, Wi-Fi.
2. Vlastnosti algoritmů, notace a zápis algoritmů.
3. Návrh a implementace algoritmů. Seznámení s vývojovým prostředím MS Visual Studio 2017.
4. Principy vyšších programovacích jazyků. Základní stavební bloky programů.
5. Jednoduché datové typy v jazyce C. Jednorozměrná a vícerozměrná pole proměnných. Výrazy a příkazy.
6. Typ ukazatel.
7. Funkce, parametry funkcí v jazyce C. Předávání hodnot odkazem, předávání hodnotou.
8. Řídící struktury. Bloková struktura programu, rozsah platnosti identifikátorů.
9. Strukturované datové typy. Výčty.
10. Textové soubory, standardní vstup/výstup. Interakce programu s uživatelem.
11. Dynamické proměnné. Spojové struktury.
12. Numerické metody v programování. Rekurze v programování. Řadicí algoritmy.
13. Konzultace k samostaným projektům.

Cvičení na počítači

26 hod., povinná

Vyučující / Lektor

Osnova

1. Úvodní hodina, seznámení s pracovištěm, kontrola přihlášení do počítačové sítě.
2. Fakultní počítačová síť, fakultní UNIX server, elektronická pošta.
3. Notace a zápis algoritmů. Vývojové diagramy.
4. Seznámení s vývojovým prostředím MS Visual Studio 2017. Konzolová aplikace.
5. Konzolová aplikace: Základní stavební bloky programů. Podmínky.
6. Konzolová aplikace: Jednoduché datové typy v jazyce C. Jednorozměrná pole proměnných. Výrazy a příkazy.
7. Konzolová aplikace: Typ ukazatel. Práce s řetězci.
8. Konzolová aplikace: Funkce, parametry funkcí v jazyce C.
9. Konzolová aplikace: Předávání hodnot odkazem, předávání hodnotou.
10. Konzolová aplikace: Strukturované datové typy. Výčty.
11. Konzolová aplikace: Textové soubory, standardní vstup/výstup.
12. Konzolová aplikace: Dynamické proměnné. Spojové struktury. Interakce programu s uživatelem.
13. Zápočtový test.

Elearning