Inf-M-1 Obor: Informatika Únor 2006 Okruh: Základy matematiky Otázka: 1. Uvažujte funkci f(x) =ln(x 2 x): Najděte její definiční obor, nulové body, vypočtěte jednostranné limity v krajních bodech definičních intervalů a v ±1, vypočtěte 1. derivaci, určete intervaly monotonie a lokální extrémy. Dále vypočtěte 2. derivaci, najděte intervaly, kde je f konvexní a konkávní a načrtněte graf funkce. 1
Inf-M-2 Obor: Informatika Únor 2006 Okruh: Základy matematiky Otázka: 2. Uvažujte lineární zobrazení ' : R 5! R 3 definované předpisem '(x1; x2; x3; x4; x5) =(x2 + x3 + x4 + x5; x1 + x3 + x4 + x5; x1 + x2 + x4 + x5): Najděte všechna x =(x1; x2; x3; x4; x5) 2 R 5 taková, že '(x) =(1; 2; 3): Dále najděte nějakou bázi vektorového podprostoru Ker ' = fx 2 R 5 ; '(x) =(0; 0; 0)g:
Inf-M-3 Obor: Informatika Únor 2006 Okruh: Základy matematiky Otázka: 3. Uvažujme reálné proměnné x, y, z a součiny jejich mocnin x a y b z c,kde a; b; c jsou nezáporná celá čísla. Takovým výrazům budeme říkat monomy. Stupeň monomu je číslo a + b + c. Vypočtěte (samotný výsledek nestačí): (1) Kolik existuje monomů stupně 5? (2) Kolik existuje monomů stupně n 3, kde se x vyskytuje v třetí mocnině? (3) Kolik existuje všech monomů stupně n 0? (4) Kolik existuje monomů stupně n 5, kde se x vyskytuje aspoň v třetí mocnině a y aspoň v druhé mocnině?
AplInf-M-1 Obor: Aplikovaná informatika Únor 2006 Okruh: Základy matematiky Otázka: 1. Uvažujte funkci 1 f(x) = 4x x 2 : Najděte její definiční obor, intervaly, kde je kladná a kde záporná, vypočtěte jednostranné limity v krajních bodech definičních intervalů a v ±1, vypočtěte 1. derivaci, určete intervaly monotonie, lokální extrémy a hodnoty v nich. Dále vypočtěte 2. derivaci a načrtněte graf funkce. 1
AplInf-M-2 Obor: Aplikovaná informatika Únor 2006 Okruh: Základy matematiky Otázka: 2. Zjistěte, pro které dvojice parametrů a, b 2 R je množina řešení soustavy rovnic 3x + y +2z = 1 x + z = 1 2x + by z = a o neznámých x; y; z 2 R (a) prázdná, (b) nekonečná. V případě (b) určete všechna řešení x; y; z dané soustavy.
AplInf-M-3 Obor: Aplikovaná informatika Únor 2006 Okruh: Základy matematiky Otázka: 3. Čtyřciferné číslo je přirozené číslo n takové, že 1000» n» 9999. Ciferný součet čtyřciferného čísla n = a 1000 + b 100 + c 10 + d, kde1» a» 9, 0» b» 9, 0» c» 9, 0» d» 9 jsou celá čísla, je číslo a + b + c + d. Vypočtěte (samotný výsledek nestačí): (1) Kolik čtyřciferných čísel má ciferný součet roven 3? (2) Kolik čtyřciferných čísel má ciferný součet roven 33? (3) Kolik čtyřciferných čísel je zapsáno pomocí 4 různých číslic? (4) Kolik čtyřciferných čísel obsahuje ve svém zápisu právě dvakrát číslici 1?
Inf-I-1 Obor: Informatika Únor 2006 Okruh: Teoretické základy informatiky Otázka: 1. (a) Mějme jazyk L nad abecedou fa; bg všech slov takových, která začínají symbolem a a obsahují alespoň jeden výskyt symbolu b. Napište regulární výraz, který popisuje jazyk L. (b) Zformulujte vztah mezi gramatikami v Chomského normální formě a bezkontextovými jazyky. (c) Navrhněte gramatiku G 1 v Chomského normální formě, která generuje jazyk L 1 = fa n b 2n j n 1g. (Rovnost L 1 = L(G 1 ) nemusíte dokazovat.)
Inf-I-2 Obor: Informatika Únor 2006 Okruh: Teoretické základy informatiky Otázka: 2. (a) Definujte pojem rekurzívně spočetná (r.e.) množina. (b) Uveďte příklad množiny, která není r.e. Zdůvodněte! (c) Nechť A je nekonečná r.e. množina, jejíž numerující funkce splňuje tuto podmínku: Existuje c 2 N tak, že pro všechna i; j c platí i<j) f(i) <f(j). Dokažte, že A je rekurzívní.
Inf-I-3 Obor: Informatika Únor 2006 Okruh: Teoretické základy informatiky Otázka: 3. (a) Výčtem prvků zapište binární relaci na množině fa; b; c; d; eg, která je reflexivním, symetrickým a tranzitivním uzávěrem relace f(a; b); (c; b); (b; e)g. (b) Uveďte příklad formulí '; ψ výrokové logiky takových, že ' ) ψ je tautologie a ψ ) ' je splnitelná, ale nikoliv tautologie. (c) Uvažme funkce f; h : N0! N0 definované induktivně takto (kde N0 = f0; 1; 2;:::g): f(0) = h(0) = 0 f(i +1)=f(i) h(i) h(i +1)=h(i)+f(i) Dokažte, že pro každé n 2 N0 platí, že f(n) =0.
Inf-I-4 Obor: Informatika Únor 2006 Okruh: Teoretické základy informatiky Otázka: 4. Jedním z algoritmů, které lze použít pro výpočet nejkratších cest z daného vrcholu do všech ostatních vrcholů hranově ohodnoceného orientovaného grafu, je Dijkstrův algoritmus. (a) Uveďte, jaká je časová složitost Dijkstrova algoritmu. (b) Pro uvedený graf napište pořadí vrcholů tak, jak pro ně Dijkstrův algoritmus vypočítá délku nejkratší cesty z vrcholu a. (c) Uvažme znovu graf z obrázku s tím, že délka hrany (b; c) se změní z hodnoty 6 na hodnotu 6. Vysvětlete, proč pro takto modifikovaný graf nevypočítá Dijkstrův algoritmus korektně délky nejkratších cest z vrcholu a do ostatních vrcholů grafu. (d) Formulujte Dijkstrův algoritmus. 1 b d 10 8 a 7 6 4 5 c 2 e 3
AplInf-I-1 Obor: Aplikovaná informatika Únor 2006 Okruh: Teoretické základy informatiky Otázka: 1. Pro následující program v Prologu p:-q,r. (1) p:-s. (2) q. (3) q:-s. (4) r. (5) s:-t. (6) s. (7) (a) napište SLD-strom pro cíl?- p., (b) zjistěte, který z cílů?- p,p.,?- p,s.,?- p,t. neuspěje, (c) popište lineární rezoluci.
AplInf-I-2 Obor: Aplikovaná informatika Únor 2006 Okruh: Teoretické základy informatiky Otázka: 2. (a) Formulujte definici obecného (ne nutně vyváženého) binárního vyhledávacího stromu, jehož klíče jsou celá čísla. (b) Jaká přesně je nejmenší a největší možná hloubka binárního vyhledávacího stromu na n uzlech (n 1)? Hloubkou rozumíme počet hran na cestě z kořene do nejvzdálenějšího listu. (c) Jakou časovou složitost vzhledem k velikosti (tj. k počtu uzlů) stromu má standardní algoritmus přidání jedné položky do binárního vyhledávacího stromu? (d) Na vstupu je posloupnost celočíselných klíčů 6; 9; 5; 7; 0; 3; 8; 1; 4; 10; 2. Nakreslete binární vyhledávací strom, který vznikne postupným přidáváním položek s klíči z této posloupnosti do stromu, který je na počátku prázdný.
Inf-P-1 Obor: Informatika Únor 2006 Okruh: Programové, informační a výpočetní systémy Otázka: 1. Jméno: Bodů: a) Definujte pojmy primární klíč a cizí klíč. K čemu se používají? b) Uvažujte funkční závislosti AB C, C DE, D F. Pomocí Armstrongových axiomů ukažte nebo vyvraťte, že platí závislost AB EF. U každého kroku uveďte, který z axiomů používáte. c) Co jsou to transakce a stručně popište jaké vlastnosti zaručují integritu dat v datové bázi. d) Uveďte princip a účel hešování. Jaké jsou vlastnosti ideální hešovací funkce?
Inf-P-2 Obor: Informatika Únor 2006 Okruh: Programové, informační a výpočetní systémy Otázka: 2. Jméno: Bodů: Je dána třída InvoiceItem, jejíž objekty představují jednotlivé položky faktury s udaným názvem zboží (label typu String [Java], resp. typu string [C++]), jednotkovou cenou (unit_price typu číslo v pohyblivé řádové čárce) a množstvím daného zboží (quantity typu číslo v pohyblivé řádové čárce). Třída nabízí veřejné metody: double getprice() vrátí celkovou cenu za tuto položku zboží String getlabel() [Java], resp. string getlabel() [C++] vrátí název zboží a veřejný konstruktor s parametry název zboží (řetězec), jednotková cena (unit_price typu číslo v pohyblivé řádové čárce) a množství daného zboží (quantity typu číslo v pohyblivé řádové čárce). Dále je dána třída InvoiceBase, jejíž objekty představují faktury. Má metody: void additem(invoiceitem item) přidá položku do faktury InvoiceItem getitem(int i) vrátí i-tou položku faktury (první má index 0) int getitemcount() vrátí celkový počet položek faktury a veřejný konstruktor bez parametrů. Vytvořte třídu Invoice jako potomka InvoiceBase tak, aby nabízela metody: double getprice() vrátí celkovou cenu všeho zboží na faktuře. String itemsasstring() [Java] string itemsasstring() [C++] vrátí fakturu jednoduše reprezentovanou řetězcem ve tvaru 'Total price <XXX>; Items: <YYY1>, <YYY2>,... <YYYn>' (bez apostrofů), kde <XXX> značí celkovou cenu zboží na faktuře a na místě <YYY1> až <YYYn> jsou řetězce pro každou z n položek na faktuře ve tvaru: ItemLabel ItemPrice tj. název položky, mezera a celková cena položky. Jednotlivé položky jsou odděleny čárkou, za poslední již čárka není. Příklad výstupu této metody: Total price 75.20; Items: Bread 17.0, Milk 29.0, Sugar 29.20 Odpověď pište buď v jazyce Java nebo C++. Poznámka pro C++: Máte k dispozici obyčejnou (nečlenskou) funkci string ftostring (double nr) vrátí string obsahující hodnotu parametru vyjádřenou jako text.
AplInf-P-1 Obor: Aplikovaná informatika Únor 2006 Okruh: Programové, informační a výpočetní systémy Otázka: 1. Jméno: Bodů: a) Charakterizujte politiky uplatňované správou stránkované virtuální paměti, která rozhoduje o: Kdy stránku zavádět do FAP Kam stránku zavádět FAP Kterou stránku ve FAP nahrazovat b) Vysvětlete a blokově znázorněte řešení výpadku stránky c) Vysvětlete a blokově znázorněte překlad logické adresy na adresu fyzickou
AplInf-P-2 Obor: Aplikovaná informatika Únor 2006 Okruh: Programové, informační a výpočetní systémy Otázka: 2. Jméno: Bodů: Vysvětlete princip přístupové metody CSMA/CD a) Napište, jakou činnost musí počítač provést, před tím, než zahájí vysílání svých informací do sítě b) Napište, jak se tato metoda chová, v okamžiku, kdy: - počítač chce přistoupit k síti, která je obsazená - počítač chce přistoupit k síti, která není obsazená c) Napište, jakým způsobem jsou u této metody: - detekovány kolize - řešeny případy, kdy dojde ke kolizi d) Uveďte, v jakých sítích se tato přístupová metoda používá
AplInf-P-3 Obor: Aplikovaná informatika Únor 2006 Okruh: Programové, informační a výpočetní systémy Otázka: 3. Jméno: Bodů: a) K čemu slouží datový model? b) Z jakých komponent se datový model skládá? c) Jaký význam má normalizace datového modelu? d) Co je 1.NF, 2.NF a 3.NF?
AplInf-P-4 Obor: Aplikovaná informatika Únor 2006 Okruh: Programové, informační a výpočetní systémy Otázka: 4. Jméno: Bodů: Je dána třída Student, jejíž objekty představují jednotlivé studenty s udaným jménem (řetězec) a věkem (celé číslo). Třída nabízí veřejné metody: String getname() [Java] string getname() [C++] vrátí jméno studenta int getage() vrátí věk studenta a veřejný konstruktor s parametry jméno (řetězec) a věk (celé číslo). Dále je dána třída Group, jejíž objekty představují seznamy studentů. Má metody: void addstudent(student s) přidá studenta do skupiny Student getstudent(int i) vrátí i-tého studenta ze skupiny (první má index 0) int getstudentcount() vrátí celkový počet studentů ve skupině a veřejný konstruktor bez parametrů. Vytvořte třídu GroupWithSelection jako potomka Group tak, aby nabízela metody: GroupWithSelection studentswithnamecontaining(string n) [Java] GroupWithSelection studentswithnamecontaining(string n) [C++] vrátí novou skupinu studentů obsahující právě ty studenty ze skupiny, na níž je metoda spuštěna, kteří mají ve jménu obsažen řetězec zadaný jako parametr této metody. GroupWithSelection studentsyoungerthan(int a) vrátí novou skupinu studentů obsahující právě ty studenty ze skupiny, na níž je metoda spuštěna, kteří mají věk nižší než udává parametr této metody. Odpověď piště buď v jazyce Java nebo C++. Poznámka pro C++: Vyvoláme-li metodu stringa.find(stringb) a stringb není obsažen v stringa, vrátí find číslo větší než je délka stringa. Pokud obsažen je, vrátí index, kde podřetězec začíná.