Počítače a programování 1 Přednáška 13 Jiří Šebesta
TÉMA – zápočtový test 1.Zápočtový test - rozbor
Zápočtový test - rozbor (1/6) • Příklad 1. V hlavním programu jsou v poli double voltage [100] uložena změřená napětí. Velikost napětí je kladná a pohybuje se od 0 V do 5 V. Za poslední změřenou hodnotou je uloženo záporné číslo. Sestavte funkci, která vypočte aritmetický průměr změřených napětí a použije jej jako návratovou adresu. Napište i část kódu pro hlavní program, kde se bude sestavená funkce a výsledek průměru se vypíše do konzolového okna. 4 body
Zápočtový test - rozbor (2/6) • Příklad 2. V řetězci char number[10] jsou uloženy číslice a desetinná tečka, za posledním znakem je null. Sestavte část hlavního programu, kde se do řetězce cela uloží číslice před tečkou, do řetězce des číslice za desetinnou tečkou. Řetězce cela a des pak převeďte na celá čísla i_cela a i_des voláním funkce y = atoi(x) z celých čísel složte číslo racionální x. Do konzolového okna vypište celé číslo před tečkou, celé číslo za tečkou a racionální výsledek (parametry tiskového řetězce jsou čísla). 6 bodů
Zápočtový test - rozbor (3/6) • Příklad 3. Deklarujte strukturu Book, která popisuje knihu ve vaší knihovně. Struktura obsahuje řetězce ukončené znakem null se jménem autora author a s názvem knihy title, a dále celočíselné položky year (rok vydání) a price (cena knihy). Definujte typ t_Book pro strukturu Book. V hlavním programu vytvořte dynamickou proměnnou kniha typu t_book a naplňte ji daty Hrabal, Postřižiny, 1986, 200. Údaje vypište do konzolového okna. 4 body
Zápočtový test - rozbor (4/6) • Příklad 4. Deklarujte vlastní typ t_Books jako pole pro uložení 100 ukazatelů na strukturu knihy (viz předchozí příklad). Nechť je toto pole naplněno z části odkazy na dynamicky vytvořené záznamy knih, pokud odkaz na dané pozici v poli ukazatelů není, pozice obsahuje adresu NULL. Napište funkci, která vypíše do konzolového okna všechny údaje o nejstarší knize a o knize nejdražší ze vstupního pole ukazatelů. První (index 0) ukazatel vždy odkazuje na naplněný záznam. 6 bodů
Zápočtový test - rozbor (5/6) • Příklad 5. Deklarujte svůj vlastní datový typ TMatrix – pole o třech řádcích a třech sloupcích celých čísel. V hlavním programu deklarujte proměnné A a B typu TMatrix a naplňte je náhodnými hodnotami v rozsahu -10 až 10. Použijte funkci rand(), která vrací celočíselnou hodnotu v rozsahu 0 až Pro inicializaci semínka náhodného generátoru použijte následující konstrukci srand(time(NULL)); Sestavte funkci, která provede součet dvou matic typu TMatrix a výsledek vypíše do konzolového okna. Použijte ji v hlavním programu pro součet matic A a B. 5 bodů
Zápočtový test - rozbor (6/6) • Příklad 6. V poli double data[100] je uloženo 100 náhodných čísel neznámého rozsahu. Napište část kódu pro seřazení těchto čísel podle velikosti od největšího po nejmenší a vypište je do konzolového okna, každé na nový řádek. 5 bodů
Přeji hodně úspěchů v zápočtovém testu DĚKUJI ZA SPOLUPRÁCI