Home page

PC2A home page

Výuka home page


Počítače a programování 2
Cvičení



přednášky naleznete zde





Body označené + jsou pro lepší studenty na hodině, nebo na domácí procvičení.



Týden

Příklad

Náplň

1

(2016)


Organizace kurzu. Termíny testů se mohou posouvat v závislosti na probrané látce.

Opakování funkce. + Příkaz preprocesoru #define. Podmíněný překlad. Projekt s více soubory, hlavičkový soubor.
Společný dělitel.

Faktoriál (normálně, rekurentně).

Vstup dat z příkazové řádky, práce s polem řetězců.

+ Výpočet Pi.

2


Dokončení Společný dělitel
Větvení programu (příkaz switch) - „hádání čísel“ pomocí půlení intervalu – vstup z konzoly
Půlení intervalu

3


Dokončení Půlení intervalu

4


Makra s bitovými operacemi (využití ternárního operátoru). Bitové operace - Base64 (Enkoder, dekoder).



Příklad na bitové operace - hledání prvočísel a uložení výsledků v bitovém poli - Eratostenovo síto

+ Převod na float

+ Třídění pomocí pole indexů se zachováním původního pole.

DU

Na test v příštím cvičení si připravte zdrojový kód podle zadání. Práce se soubory viz cvičení 6.

5


Test č.1
Náplň – BPC1 (cykly, proměnné, funkce, větvetní), cvičení (funkce, rekurze, bitové operace, makra, vývojové diagramy), práce se soubory.
Možné typy příkladů - teoretické otázky, programování podle zadání, zjištění co dělá daná funkce, oprava zadaného kódu, převod vývojový diagram na program (a opačně) ...)
Forma – pokud se nepodaří odpojit PC od sítě, potom test na papír.
Pomůcky – tištěná skripta, knihy, papírové poznámky (v případě práce na PC)
Čas – cca jedna hodina

Dokončení prací z minula.

6


Sorty (třídění) setřídění dat podle velikosti pomocí algoritmu buble sort.

Práce se soubory - kopie souboru, vstup parametrů z konzoly. Statistika znaků v souboru + tisk (podle limitů). Konzola jako soubor. stdin, stdout,stderr

( - knihovny, překlad na UNIX (server FEST).)

7

(velký pátek)

Ukazatele základ - předání parametrů (typu ukazatel), ukazatelová aritmetika nad statickým polem, vyměna ukazatelu na pole intu (v main, ve funkci).

8


Formátovaný tisk (násobilka, sin/cos) , předávání 2D pole do funkce

Ascii art - načtení dat a uložení výsledku do souboru.

+ Knihovna pro konverzi endianity hodnot v souboru. (fread,fwrite, read, write)

+ Knihovna pro statistické výpočty.

9


Přípravný projekt k testu 2 – rozbalte a sledujte návod „navod_ke_cviceni.txt“, dále pokračujte podle zadání v docx.
(v01 – opraven test PocetMezer, přidán test PrevedPole 2016-04-08)

K dalšímu procvičování:
Alokace – výměna polí.
Vícerozměrné pole (uprava na strukturu). Rozdíl mezi „polem polí“ a dynamickým polem)
Checker.

DU2_2015 zadání (Linux verze test knihovny zde – spravuje p.Petyovsky)
!!! Pozor !!! Loňské zadání je pro VS2013, proto je nutné v properties/general/platform toolset nastavit VS2013 v120. !!!

+ vicerozmerne pole s datovym prvkem union (struct { enum TType{EChar, EInt, ELong} aType;union { char aChar; int aInt; long aLong} aVal;}

test 2 2016 20161 20162 (nová verze – upraveno počítání paměti ve funkci odděl)

10


Test č.2

DU2 (předběžné znění, které ještě dozná menších změn)
(Linux verze test knihovny zde – spravuje p.Petyovsky)

Příklad pro procvičení programování:
Složitější zadání komplexnějšího příkladu/projektu

11


Struktura komplex. Ukazatele na struktury,

12


Použití struktur - Lineární seznam.

+ Binarni strom, morseovka. (vyuzit knihovnu (diplomka) na malovani struktur)

13


zápočtový test(č.3). ukazatele + struktury



+ Stavový diagram/automat , enum - odstranění komentářů















Poslední změna 2016-04-15