Bakalářské zkoušky (příklady otázek)
|
|
- Jindřiška Šmídová
- před 6 lety
- Počet zobrazení:
Transkript
1 Bakalářské zkoušky (příklady otázek) léto Algoritmy: grafové algoritmy (3 body) 1. Definujte topologické uspořádání vrcholů acyklického orientovaného grafu. 2. Popište algoritmus, který toto uspořádání nalezne. Rozeberte jeho časovou složitost. 3. Ukažte, jak pomocí topologického uspořádání spočítat, kolik existuje cest ze zadaného vrcholu u do zadaného vrcholu v. 2 Architektura počítačů a operačních systémů (3 body) Předpokládejte běžný operační systém jako Windows 10 nebo Linux, běžící na počítači s jedním jednojádrovým procesorem. Dále předpokládejte, že máme spustitelné soubory dvou aplikací P1.EXE a P2.EXE. Zdrojový kód obou aplikací v jazyce Pascal vypadá zhruba takto (programy P1.EXE a P2.EXE se liší pouze implementací funkce Transform): function Transform (data : string) : string; begin... end; var line : string; begin while not (eof (input)) do begin ReadLn (line); line := Transform (line); WriteLn (line); end; end. V aktuálním adresáři máme k dispozici textový soubor IN.TXT o velikosti 1 GiB. Oba programy spustíme na příkazové řádce jedním příkazem: P1.EXE < IN.TXT P2.EXE > OUT.TXT 1. Dá se předpokládat, že za této situace běží programy P1 a P2 alespoň nějakou chvíli opravdu současně? Vysvětlete proč, případně jak je toho docíleno. Dále schematicky načrtněte do časové osy jaký kód (kód programů P1 a P2, kód operačního systému či jiné komponenty) bude asi procesor provádět v nějaké zajímavé části zpracování výše uvedeného příkazu zajímá nás ta část výpočtu, kde bude vidět alespoň část běhu programu P1 a současně také alespoň část běhu programu P2. 2. Bylo by možné programy P1 a P2 (a případně výše uvedený příkaz) upravit tak, aby program P1 svůj výstup zapisoval rovnou do proměnné line programu P2 (a tedy komunikace mezi P1 a P2 by z pohledu P1 probíhala přímými zápisy do paměti, nikoliv přes standardní výstup a vstup)? Vysvětlete proč, případně načrtněte potřebnou úpravu P1 a P2. 3. Pouze pro tuto část předpokládejte, že funkce Transform v P1 vypadá tak, že na začátek každé řádky přidává znak plus, funkce Transform v P2 na konec každé řádky přidává znak vykřičník. Co by se stalo, pokud bychom na výše uvedené příkazové řádce místo souboru IN.TXT předložili programu P1 nějaký binární soubor obsahující obrázek ve formátu BMP nebo JPG nebo PNG? Popište stručně chování programů P1 a P2 v takové situaci. Došlo by k nějaké chybě při spuštění nebo běhu programu P1 nebo P2? Vysvětlete proč.
2 3 Programovací jazyky: principy objektového návrhu (3 body) Předpokládejte, že navrhujete objektový model editoru pro 2D vektorovou grafiku. Editor má dovolit uživateli vybírat z nabídky různých typů grafických tvarů (přímka, čtverec, kružnice...) tvar se nejprve vybere podle názvu a pak kliknutím umístí na plochu. 1. Navrhněte objektový model (hierarchii tříd, rozhraní objektů, signatury metod) umožňující snadno implementovat nové druhy tvarů. Rozhraní by mělo dovolit registraci každého typu grafického tvaru v editoru a dále vykreslování tvarů. 2. Doplňte model tak, aby uživatel editoru mohl zadávat parametry tvarů. Počet a názvy parametrů jsou pro každý typ tvaru jiné, typ parametru je vždy double. Pro řešení úlohy si vyberte jeden z jazyků Java, C++, C#. Při hodnocení odpovědi nebudou uvažovány drobné syntaktické chyby, ale obecně by použité konstrukce měly odpovídat zvolenému programovacímu jazyku. 4 Základy sítí: SMTP (3 body) Napište sekvenci odeslaných a přijatých zpráv protokolu SMTP při odesílání u na server muj.smtpserver.edu z klienta lab.skola.edu. Odesílatel má adresu alice@skola.edu, příjemce má adresu bob@domecek.com, subject je Navsteva, text je Prijdu ve 2, A, odesílá se právě teď. Vedle základní sekvence SMTP zpráv s potřebnými parametry se očekává obecný popis relace, tedy zejména vysvětlení, jakým transportním protokolem a jak se zasílají jednotlivé zprávy. Drobné syntaktické chyby v odpovědi nehrají roli. 5 Logika (3 body) 1. Uveďte definici pojmu model teorie T. Uveďte znění věty o kompaktnosti predikátové logiky. 2. Nechť N = N, S, +,, 0, je standardní model přirozených čísel jazyka aritmetiky L = S, +,, 0, s rovností. Pro n N označme n term S(S( (S(0) ), tzv. n-tý numerál, kde S je aplikováno n-krát. Uvažme teorii T = Th(N) {n < c n N, kde Th(N) označuje množinu všech pravdivých sentencí v N a c je nový konstantní symbol. Má teorie T model? Uveďte zdůvodnění. 6 Norma (2 body) Definujte pojem norma vektoru. 7 Lineární zobrazení (3 body) Nad tělesem reálných čísel uvažme matici Rozhodněte, zda lineární zobrazení x Ax: 1. je prosté, 2. je na, A = zobrazuje lineárně nezávislou množinu na lineárně nezávislou množinu. 8 Diagonalizovatelnost (3 body) Určete, jestli následující matice jsou diagonalizovatelné (v teorii vlastních čísel, tedy podobné nějaké diagonální matici): A = , B = Odpovědi zdůvodněte, rozklad počítat nemusíte.
3 9 Limita posloupnosti (2 body) Definujte pojem limita posloupnosti. 10 Taylorův polynom (3 body) Napište Taylorův polynom druhého stupně pro funkci danou předpisem f(x) = tg x (funkce tangens) v okolí bodu 0. Výpočet zdůvodněte. 11 Integrál (4 body) Spočtěte hodnotu Zmiňte, jaké věty při výpočtu používáte e x + 1 dx. 12 Souvislost grafů (3 body) 1. Napište definici tahu v grafu. 2. Za jakých podmínek existuje v grafu G tah, který obsahuje všechny jeho hrany? 3. Napište definici hranové k-souvislosti. 4. Ukažte, že je-li graf G souvislý a má všechny stupně sudé, pak je hranově 2-souvislý. 13 Pravděpodobnost a střední hodnota (4 body) Uvažme pravděpodobnostní prostor slov délky 8 nad abecedou {a, b, každé se stejnou pravděpodobností. Nechť A označuje jev: Posloupnost (x 1,..., x 8 ) obsahuje podposloupnost aaa. a náhodná veličina F A je rovna počtu výskytů podposloupnosti aaa. Analogicky, jako B označme jev: Posloupnost (x 1,..., x 8 ) obsahuje podposloupnost aba. a F B je rovna počtu výskytů podposloupnosti aba. (Posloupnost (x 1,..., x 8 ) obsahuje podposloupnost rst, pokud existují indexy 1 i < j < k 8 takové, že x i = r, x j = s, x k = t. Tedy někde v posloupnosti je r, za ním, ne nutně bezprostředně, je s a o něco dále t. Například abba obsahuje podposloupnost aba, ale ne podposloupnost bab.) 1. Určete pravděpodobnosti jevů A a B. 2. Spočtěte střední hodnoty náhodných veličin F A a F B. 14 Izomorfismus grup (3 body) Uvažte následující grupy Z 12, Z 2 Z 6, Z 3 Z 4, Z 2 Z 2 Z 3. Rozhodněte, které dvojice z nich jsou navzájem izomorfní a odpovědi zdůvodněte. 15 Algoritmy: třídění Merge Sort (3 body) 1. Napište pseudokód třídícího algoritmu Merge Sort. 2. Napište časovou složitost tohoto algoritmu pro n prvků v průměrném a nejhorším případě. 3. Je váš algoritmus stabilní? Proč?
4 16 Algoritmy a optimalizace: splnitelnost (otázka pro studijní zaměření 5 bodů) Na problému splnitelnosti ilustrujte využití lineárního programování při návrhu aproximačních algoritmů. Porovnejte s jinými algoritmy pro splnitelnost. 1. Formulujte lineární program pro instanci problému splnitelnosti (obecně, případně ilustrujte na příkladě), popište algoritmus založený na LP a proveďte jeho analýzu. 2. Formulujte jednoduchý pravděpodobnostní algoritmus pro problém splnitelnosti a určete jeho vlastnosti. 3. Znáte nějaký lepší přístup? (Uvažte kombinaci přístupů z bodu 1. a 2..) 17 Algoritmy a optimalizace: Voroného diagramy (otázka pro studijní zaměření 4 body) Definujte Voroného diagram diagram n bodů v rovině. Dokažte horní odhad jeho složitosti s využitím výsledku o maximální složitosti konvexního mnohostěnu na n vrcholech v 3-dimenzionálním prostoru. (Stačí princip důkazu, technické výpočty je možno vynechat.) 18 Architektura počítačů: stránkování (3 body) Uvažujte architekturu s podporou stránkování a délkou virtuální i fyzické adresy 32 bitů. K překladu adres je použita dvouúrovňová stránkovací tabulka, každá úroveň tabulky má 1024 položek. Ve výsledcích můžete v případě potřeby používat i šestnáctkovou nebo dvojkovou soustavu. 1. Rozdělte virtuální adresu 12AB34CD 16 na indexy do obou úrovní stránkovací tabulky a offset v rámci stránky. 2. Nakreslete obsah položek stránkovací tabulky, který bude uvedenou virtuální adresu mapovat na fyzickou adresu EF7654CD 16. Všechna pole, která procesor použije k překladu této adresy, musí být vyplněna konkrétními hodnotami. Pokud zadání nějakou hodnotu neuvádí, doplňte jí podle vlastního uvážení. 3. Pokud je obsah fyzické paměti na uvažované architektuře ukládán v cache s délkou řádku 64 bajtů, je v pořádku na uvedenou virtuální adresu uložit celočíselnou proměnnou o délce 4 bajty? Vysvětlete, o jakou úvahu se v odpovědi opíráte. 19 Automaty a gramatiky (3 body) V následujícím příkladě uvažujme standardní binární reprezentaci přirozených čísel, tj. binární slovo w = w n w n 1... w 0 reprezentuje přirozené číslo n i=0 w i2 i. Speciálně, prázdné slovo λ reprezentuje přirozené číslo Sestrojte deterministický konečný automat A takový, že L(A) = {w {0, 1 w reprezentuje přirozené číslo dělitelné Napište regulární výraz pro jazyk L(A). 3. Napište gramatiku co nejvyššího (tj. nejméně obecného) typu v Chomského hierarchii generující jazyk L(A). O jaký typ gramatiky se jedná? 20 Databáze (3 body) Uvažme následující tabulku v relační SQL databázi, která obsahuje (zjednodušená) data rozvrhu na naší fakultě. Jeden řádek odpovídá jednomu záznamu (například přednášce) v rozvrhu. Jeden takový záznam chápeme jako pravidelnou výuku, která se opakuje týdně po celý jeden semestr. Tabulka Rozvrh: Předmět (kód vyučovaného předmětu, např. NDBI025 ) Název (název vyučovaného předmětu, např. Databázové systémy ) Rok (kalendářní rok, ve kterém začíná daný akademický rok např je akademický rok 2016/17)
5 Semestr ( LS nebo ZS ) Den (den v týdnu 0 = neděle, 1 = pondělí,...). Začátek (čas začátku jako počet minut od půlnoci v daný den v týdnu např. 640 odpovídá času 10:40) Délka (délka trvání v minutách) Typ (typ výuky P = přednáška, C = cvičení) Místnost (kód místnosti, kde probíhá výuka např. S3 ) Učitel (osobní číslo učitele, který za výuku odpovídá) Žádný atribut nesmí být NULL. Databázové schéma by mělo garantovat, že v jednu dobu začíná v jedné místnosti pouze jedna rozvrhová událost. Schéma již negarantuje, že se události nepřekrývají (tedy čas začátku + délka jedné události může být větší než čas začátku následující události). Schéma také neřeší, zda má jeden učitel v danou dobu pouze jednu výuku. Závislosti mezi jednotlivými atributy chápejte přirozeně (podle toho, jak skutečně probíhá výuka na naší fakultě). Například platí, že k jednomu předmětu může být libovolný počet přednášek i cvičení a každá taková přednáška či cvičení může mít jiného vyučujícího. 1. Najděte nejmenší vhodný (primární) klíč. Pokud je takových klíčů více, napište jeden libovolný z nich. 2. Určete, jaké normální formy (1NF až 5NF) dané schéma splňuje a stručně zdůvodněte. 3. Upravte dané schéma, aby vyhovovalo BCNF (Boyce-Coddově normální formě). 21 Databáze: B-stromy (3 body) Postavte nejmenší možný neredundantní B-strom se stupněm vrcholů N = 4 pro následující množinu klíčů a nakreslete výsledek: 3, 8, 19, 21, 27, 33, 39, 42, 49, 54, 61, 64, 71, 77, 88 Na stromě následně vykonejte níže uvedené operace (v daném pořadí) a zakreslete stav stromu po jejich provedení. Pokud je nějaký dílčí krok některé operace možné provést různými způsoby (např. vyjmout největší prvek z levého nebo nejmenší prvek z pravého podstromu), vyberte si jeden libovolný z nich, ale buďte konzistentní v rámci všech úprav (tj. vyberte si jeden způsob na začátku a používejte ho pro všechny operace). INSERT 43 DELETE 64 DELETE Diskrétní modely a struktury: axiom výběru (otázka pro studijní zaměření 1. Zformulujte axiom výběru. 2. Jak souvisí axiom výběru s existencí neměřitelných množin? 23 Diskrétní modely a struktury: párování v grafech (otázka pro studijní zaměření 1. Nechť K a,b,c označuje úplný tripartitní graf s partitami velikosti a, b a c, tj. graf s množinou vrcholů {x 1,..., x a, y 1..., y b, z 1,... a hranami x i y j, y j z k a x i z k pro 1 i a, 1 j b a 1 k c. Pro která přirozená čísla a, b a c má K a,b,c perfektní párování? 2. Zformulujte Tutteho větu o existenci perfektního párování. 3. Nechť T je strom. Ukažte, že T má perfektní párování právě tehdy, když pro každý vrchol v V (T ) má T v právě jednu komponentu liché velikosti.
6 24 Diskrétní modely a struktury: Ramseyova teorie (otázka pro studijní zaměření 1. Zformulujte Ramseyovu větu pro úplné grafy s hranami obarvenými dvěma barvami. 2. Ukažte, že z každé nekonečné posloupnosti navzájem různých celých čísel lze vybrat nekonečnou monotónní (rostoucí nebo klesající) podposloupnost. 25 Matematická lingvistika: formální jazyky a automaty (otázka pro studijní zaměření 1. Vysvětlete pojem neprojektivity v závislostních stromech. 2. Uveďte příklad nějaké neprojektivní věty. 3. Vysvětlete, do jaké třídy jazyků podle Chomského hierarchie patří přirozené jazyky, které obsahují neprojektivní konstrukce. 26 Matematická lingvistika: základní formalismy pro popis přirozených jazyků (otázka pro studijní zaměření Popište základní vlastnosti teorie Funkčního generativního popisu. Vysvětlete pojem valence. 27 Matematická lingvistika: základy teorie informace (otázka pro studijní zaměření V textu pozorujeme slovní druhy slov vyskytujících se bezprostředně před slovesem. Zjistili jsme, že pravděpodobnost výskytu příslovce před slovesem je 1/4 a pravděpodobnost výskytu substantiva před slovesem je 1/2. 1. Nechť dále platí, že pravděpodobnost výskytu slovesa v textu je P (V ) = 1/8. Vypočítejte pravděpodobnost výskytu příslovce následovaného slovesem. 2. Vypočítejte entropii náhodné veličiny, která reprezentuje slovní druh slov před slovesem a nabývá tří různých hodnot N, D, X, kde N je substantivum, D je příslovce a X je libovolný jiný slovní druh. 28 Počítačová grafika: anti-aliasing (otázka pro studijní zaměření 1. Který z parametrů rastrového zobrazovacího zařízení je anti-aliasingem vylepšen? Jak se to pozná na výsledném obrázku? 2. Jak se může anti-aliasing implementovat v klasickém rastrovém vykreslování? 3. Jak se anti-aliasing implementuje v prostředí paprskového zobrazovače (např. ray-tracing)? 29 Počítačová grafika: zobrazování 3D scény na GPU (otázka pro studijní zaměření 1. Jaká 3D primitiva umí GPU přímo zobrazit (v klasickém 3D zobrazovacím řetězci)? 2. Jak se posílají 3D data z aplikace do GPU? Uveďte jen přehledně několik příkladů. 3. Navrhněte rámcově efektivní systém organizace 3D scény a její odesílání do GPU. Předpokládejte, že scéna se skládá z pevné části (např. terén = povrch Země) a z pohybujících se objektů, které se však nedeformují.
7 30 Počítačová grafika: rastrová a vektorová grafika (otázka pro studijní zaměření 1. Uveďte základní princip rastrové a vektorové grafiky, uveďte příklady grafických formátů, vektorových i rastrových. 2. Jaké jsou výhody vektorové grafiky a pro které operace bychom ji preferovali? Uveďte konkrétní příklady. 3. Naznačte principy komprese rastrových grafických dat. 31 Databáze (3 body) Uvažme následující tabulku v relační SQL databázi, která obsahuje (zjednodušená) data rozvrhu na naší fakultě. Jeden řádek odpovídá jednomu záznamu (například přednášce) v rozvrhu. Jeden takový záznam chápeme jako pravidelnou výuku, která se opakuje týdně po celý jeden semestr. Tabulka Rozvrh: Předmět (kód vyučovaného předmětu, např. NDBI025 ) Název (název vyučovaného předmětu, např. Databázové systémy ) Rok (kalendářní rok, ve kterém začíná daný akademický rok např je akademický rok 2016/17) Semestr ( LS nebo ZS ) Den (den v týdnu 0 = neděle, 1 = pondělí,...). Začátek (čas začátku jako počet minut od půlnoci v daný den v týdnu např. 640 odpovídá času 10:40) Délka (délka trvání v minutách) Typ (typ výuky P = přednáška, C = cvičení) Místnost (kód místnosti, kde probíhá výuka např. S3 ) Učitel (osobní číslo učitele, který za výuku odpovídá) Žádný atribut nesmí být NULL. Databázové schéma by mělo garantovat, že v jednu dobu začíná v jedné místnosti pouze jedna rozvrhová událost. Schéma již negarantuje, že se události nepřekrývají (tedy čas začátku + délka jedné události může být větší než čas začátku následující události). Schéma také neřeší, zda má jeden učitel v danou dobu pouze jednu výuku. Závislosti mezi jednotlivými atributy chápejte přirozeně (podle toho, jak skutečně probíhá výuka na naší fakultě). Například platí, že k jednomu předmětu může být libovolný počet přednášek i cvičení a každá taková přednáška či cvičení může mít jiného vyučujícího. 1. Najděte nejmenší vhodný (primární) klíč. Pokud je takových klíčů více, napište jeden libovolný z nich. 2. Upravte dané schéma, aby vyhovovalo BCNF (Boyce-Coddově normální formě). 3. Napište SQL dotaz, který z výše popsané tabulky vrátí všechny učitele, kteří v letním semestru 2016/17 mají špatně rozvrženo a mají dvě překrývající se výuky (přednášky nebo cvičení) v jeden čas. Plynule navazující události výuky (tedy pokud jedna výuka učitele končí v čase T a v témže čase T jiná výuka začíná) nepovažujeme za překrývající se. 32 Automaty a gramatiky, překladače (3 body) Aplikace ukládá konfiguraci ve formátu json, přičemž využívá pouze číselné a strukturované položky (do hloubky 3). Konkrétní položky se v jednotlivých verzích liší, vždy je přítomna (právě jednou) položka "config"/"version" určující verzi aplikace (celé číslo), např.: { "config": { "somestruct": { "somenumber": 3, "version": 7, "otherdata": 729
8 1. Napište bezkontextovou gramatiku (nejlépe v nějakém standardním formátu jako yacc/bison, ale není nutností), která akceptuje konfigurace verze 10 (a žádné jiné), tj. splňující podmínku "config"/"version" = 10. Detaily jako formát řetězců a čísel, whitespace nebo oddělující čárky můžete vynechat. 2. Patří tato gramatika do třídy LL(1)? 3. Lze uvedený jazyk, tedy konfigurace verze právě 10, rozpoznat konečným automatem? 33 Sítě a internetové technologie: firewall a FTP (otázka pro studijní zaměření Předpokládejme, že jste správce serveru zabezpečeného firewallem, který nemá otevřené žádně nepoužívané porty pro příchozí komunikaci. Vedení firmy se rozhodlo, že na tomto serveru bude provozována nově služba FTP, očekává se spíše malý provoz (max. 10 souběžně připojených klientů). Bylo rozhodnuto, že FTP bude podporovat pouze pasivní datové přenosy. Jaké porty (příp. rozsahy portů) bude nutné otevřít pro příchozí komunikaci ve firewallu a proč? 34 Sítě a internetové technologie: BSD sockety (otázka pro studijní zaměření Naprogramujte (ideálně v C nebo C++, možné jsou i podobné jazyky jako C# nebo Java) pomocí BSD socketů server přijímající na portu 6677 TCP připojení pro IPv4. Pro každého připojeného klienta přečte binárně 4 bajty bezznaménkového celého čísla zaslaného v pořadí bajtů obvyklém na síti. Toto číslo zvětší o 1, odešle ho klientovi zpět ve stejném binárním formátu a uzavře spojení s klientem. Při zápisu kódu nejsou důležité drobné syntaktické chyby, rovněž nejsou hodnoceny faktory jako chybějící nepodstatné parametry volaných funkcí, jiné pořadí parametrů a podobně, hlavní je správné zachycení celkové struktury kódu serveru. 35 Sítě a internetové technologie: WiFi (otázka pro studijní zaměření 3 body) Vaše domácí síť si dosud vystačila se stařičkým WiFi routerem (podporuje pouze b/g). Stahování multimediálního obsahu do tabletu se Vám zdá příliš zdlouhavé. Zároveň s tím významně vzrostl počet sousedů v okolí Vašeho bytu se zapnutou WiFi rovněž využívající b/g. Rozhodnete se tuto situaci řešit zakoupením nového routeru. 1. Jaké další protokoly musí podporovat nový, běžně dostupný router, aby se zmírnil problém se sousedy (včetně zdůvodnění proč)? 2. Jaké další protokoly musí podporovat nový, běžně dostupný router, aby se významně zrychlilo stahování multimediálního obsahu (včetně zdůvodnění proč)? 36 Systémové programování: middleware (otázka pro studijní zaměření 3 body) Předpokládejte, že následující rozhraní je zpřístupněno pomocí mechanismu volání vzdálených procedur (remote procedure call), tedy implementace tohoto rozhraní je umístěna na vzdáleném serveru a klient toto rozhraní volá skrz automaticky generovanou proxy. public interface RemoteServer { public int docomputation (int computationinput); 1. Napište, jak bude vypadat rozhraní, které nabízí automaticky generovaná proxy na straně klienta. 2. Napište, co bude obsahem zpráv, které si vyměňují klient a server při volání uvedeného rozhraní. 3. Načrtněte kód, který implementuje proxy na straně klienta a její protějšek na straně serveru. Předpokládejte, že máte k dispozici funkce pro spolehlivý přenos zpráv mezi klientem a serverem, formát zprávy můžete zvolit libovolně tak, aby umožnil jednoduchou implementaci.
9 Poznámka: Pro zápis kódu používá otázka základní konstrukce jazyka Java, nicméně tohoto jazyka se přímo netýká a použité konstrukce je možné vnímat obecně jako běžné konstrukce imperativního objektového jazyka. Případný kód v zápisu odpovědi může být zapsán podobně volně. 37 Systémové programování: správa verzí (otázka pro studijní zaměření 3 body) Vysvětlete následující výpisy nástroje git (obsahy commit messages není třeba vysvětlovat): 1. V následujícím, co je řetězec za polem commit (nejde o to jak se dojde ke konkrétní hodnotě, ale co reprezentuje)? Odkud se berou pole author a date a o jaké operaci log informuje? > git log commit 6d53cefb18e4646fb4bf62ccb6098fb df Author: Linus Torvalds <torvalds@linux-foundation.org> Date: Sun Jun 11 15:51: compiler, clang: properly override inline for clang V následujícím, co je branch? Co znamená označení souboru modified? > git status On branch master Your branch is up-to-date with origin/master. Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git checkout -- <file>..." to discard changes in working directory) modified: README 3. V následujícím, co znamená řádek s textem merge a o jaké operaci log informuje (vysvětlení by mělo jít za prostý překlad termínu)? > git log commit 5ad9345d2321eb d136d01cf8345 Merge: 5e38b72 b169c13 Author: Linus Torvalds <torvalds@linux-foundation.org> Date: Sun Jun 11 12:02: Pull randomness fixes from Ted Ts o Systémové programování: rozhraní pro synchronizaci (otázka pro studijní zaměření Následující kód používá třídy Lock a Semaphore, s těmito deklaracemi: public class Lock { public Lock () {... public void lock () {... public void unlock () { public class Semaphore { public Semaphore (int permits) {... public void acquire () {... public void release () { Napište stručně semantiku jednotlivých metod tříd Lock a Semaphore. 2. Pomocí třídy Lock je implementována tato třída reprezentující jednoduchý zásobník:
10 public class StackWithLock { private final int MAX_SIZE = 1000; private int [] storage = new int [MAX_SIZE]; private int top = 0; private Lock lock = new Lock (); public void push (int value) { lock.lock (); storage [top] = value; top ++; lock.unlock (); public int pop () { lock.lock (); top --; int value = storage [top]; lock.unlock (); return (value); Rozhodněte, zda je bezpečné volat funkce třídy StackWithLock z více vláken a vysvětlete proč. Třída netestuje přetečení ani podtečení implementovaného zásobníku, ve své odpovědi uvažujte odděleně případ, kdy se lze spolehnout na to, že přetečení ani podtečení nikdy nenastane, i případ, kdy nastat mohou. 3. Pomocí třídy Semaphore je implementována další třída reprezentující jednoduchý zásobník: public class StackWithSemaphore { private final int MAX_SIZE = 1000; private int [] storage = new int [MAX_SIZE]; private int top = 0; private Semaphore semaphore = new Semaphore (0); private Lock lock = new Lock (); public void push (int value) { lock.lock (); storage [top] = value; top ++; lock.unlock (); semaphore.release (); public int pop () { semaphore.acquire (); lock.lock (); top --; int value = storage [top]; lock.unlock (); return (value); Vysvětlete, v jaké situaci se bude třída StackWithSemaphore chovat jinak než StackWithLock a proč. Poznámka: Pro zápis kódu používá otázka základní konstrukce jazyka Java, nicméně tohoto jazyka se přímo netýká a použité konstrukce je možné vnímat obecně jako běžné konstrukce imperativního objektového jazyka. Případný kód v zápisu odpovědi může být zapsán podobně volně.
11 39 Databáze a web: programování na straně serveru (otázka pro studijní zaměření Uvažme webovou aplikaci, která zobrazuje katalog produktů administrátorovi e-shopu. Produkty jsou zobrazeny v klasické HTML tabulce. Produktů je mnoho, a proto se v tabulce zobrazuje vždy pouze 50 produktů najednou. Pod tabulkou se nachází odkazy pojmenované 1, 2,..., P (P = N/50, kde N je celkový počet produktů), které slouží ke stránkování tabulky (odkaz 1 nechá zobrazit prvních 50 produktů, odkaz 2 produkty , atd.). Produkty mají dále zaškrtávací políčka (checkbox), která umožňují produkty vybrat. Pod tabulkou se nachází tlačítka Skladem, Na objednávku, Nedostupné, která přepnou vybrané (zaškrtnuté) produkty do příslušného stavu dostupnosti. Skript zobrazující stránku s tabulkou je v souboru index.php, skript zpracovávající výše popsané operace je v souboru change_availability.php. Pro zjednodušení máte již předimplementované funkce: get_product_count() vrací celkový počet produktů (int) get_products($offset, $count) vrací pole indexované DB klíči produktů (int) a hodnoty jsou samotné produkty (object) render_product_row($product) vrací řetězec obsahující produkt naformátovaný jako řádek tabulky (<tr>...</tr>). V první buňce vytvořeného řádku se nachází <input> element typu checkbox, který má jako hodnotu atributu name řetězec product[id ], kde id je unikátní identifikátor produktu získaný z objektu $product, a atribut value s hodnotou Napište klíčovou část skriptu index.php, aby aplikace mohla být funkční dle popisu výše (za předpokladu doplnění odpovídající implementace skriptu change_availability.php) a aby neporušovala specifikaci HTTP protokolu. 2. Stručně popište, co musí provést skript change_availability.php poté, co zpracuje požadavek a provede změny v databázi, aby uživateli opět zobrazila tabulka se stejnými produkty (tj. na stejném místě stránkování). Navržené řešení musí fungovat korektně i pokud uživatel během svojí práce nechá znovu načíst stránku prohlížečem nebo použije tlačítka pro navigaci v historii (zpět/vpřed). 40 Databáze a web: REST (otázka pro studijní zaměření Mějme aplikaci pro ukládání webových záložek (hyperlinků). Hyperlinky jsou ukládány do kategorií, každý hyperlink je právě v jedné kategorii. Struktura kategorií je plochá (kategorie se do sebe nevnořují). Kategorie i hyperlinky jsou interně identifikovány unikátními číselnými ID (které generují sekvence v DB). Každá kategorie a každý hyperlink má popisek, který se zobrazuje uživateli. Příklad vizualizace všech uložených hyperlinků může vypadat následovně: Vyhledávače Google [ Seznam [ Komixy Garfield [ Dilbert [ XKCD [ Navrhněte RESTfull API pro tuto aplikaci, přičemž API musí nabídnout kompletní manipulaci s databází záložek (čtení, modifikace,... ). Popište jednotlivé funkce tohoto API, přičemž konkrétní formát těla HTTP požadavku a HTTP odpovědí nemusíte vysvětlovat detailně stačí stručně zmínit, co je v těle a v jakém formátování. Nezapomeňte také popsat možné chybové stavy resp. co je uvedeno v HTTP odpovědi, když dojde k chybě. API se pokuste vytvořit nejmenší možné, které pokrývá zadání. Není např. nutné mít funkci smazání celé databáze, pokud je možné postupně smazat jednotlivé kategorie. Detaily autentizace a autorizace uživatele při manipulaci se záložkami neřešte. 41 Databáze a web: B-stromy (otázka pro studijní zaměření Postavte nejmenší možný neredundantní B-strom se stupněm vrcholů N = 4 pro následující množinu klíčů a nakreslete výsledek: 3, 8, 19, 21, 27, 33, 39, 42, 49, 54, 61, 64, 71, 77, 88 Na stromě následně vykonejte níže uvedené operace (v daném pořadí) a zakreslete stav stromu po jejich provedení. Pokud je nějaký dílčí krok některé operace možné provést různými způsoby (např. vyjmout největší prvek z levého nebo nejmenší
12 prvek z pravého podstromu), vyberte si jeden libovolný z nich, ale buďte konzistentní v rámci všech úprav (tj. vyberte si jeden způsob na začátku a používejte ho pro všechny operace). INSERT 43 DELETE 64 DELETE Softwarové inženýrství: XSLT (otázka pro studijní zaměření Mějme následující XML dokument: <?xml version="1.0"?> <database> <employee id="z001" supervisor="z002"> <name>steaven</name> <surname>blamer</surname> </employee> <employee id="z002"> <name>gill</name> <surname>bates</surname> </employee> <employee id="z003" supervisor="z002"> <name>satyra</name> <surname>mandela</surname> </employee> <employee id="z004"> <name>tim</name> <surname>boil</surname> </employee> <employee id="z005" supervisor="z004"> <name>lucas</name> </employee> </database> <surname>masterpiece</surname> Tento dokument transformujeme pomocí následující XSLT šablony. <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl=" <xsl:output method="html" indent="yes"/> <xsl:template match="/"> <html xmlns=" <body> <ul><xsl:apply-templates/></ul> </body> </html> </xsl:template> <xsl:template match="database/employee[not(@supervisor)]"> <xsl:call-template name="employee"/> </xsl:template> <xsl:template name="employee"> <xsl:variable name="id" select="@id"/> <li xmlns=" <xsl:value-of select="name" /> <xsl:text disable-output-escaping="yes"> </xsl:text> <xsl:value-of select="surname" /> <xsl:if test="count(/database/employee[@supervisor=$id]) > 0"> <ul> <xsl:for-each select="//employee[@supervisor=$id]"> <xsl:call-template name="employee"/> </xsl:for-each> </ul> </xsl:if> </li> </xsl:template> <xsl:template match="/database/employee/*" /> </xsl:stylesheet> Naznačte, jak bude přibližně vypadat výsledné HTML zobrazené v prohlížeči.
13 43 Softwarové inženýrství: traits a policies (otázka pro studijní zaměření 3 body) Uvažme následující (nekompletní) třídu v jazyce C++: template<typename T = float> class Matrix { private: std::vector<t> data; std::size_t M, N; public: //... T operator[](std::size_t i, std::size_t j) { return data[i*m + j]; ; Jak je vidět, tato implementace matice používá řádkovou reprezentaci dat (řádky matice jsou lineárně seřazeny za sebe v paměti). S použitím class policies a traits upravte kód tak, aby si uživatel této třídy mohl (v době kompilace) vybrat, zda chce mít matici uloženou v paměti po řádcích nebo po sloupcích (případně si mohl naimplementovat vlastní organizaci). 44 Softwarové inženýrství: návrhové vzory (otázka pro studijní zaměření 3 body) Připravujeme nový informační systém pro univerzitu, který má být implementován pomocí běžného objektového imperativního jazyka (vyberte si z C#, C++, Java). Existují tři typy uživatelů (Student, Učitel, Zaměstnanec) a je velmi nepravděpodobné, že se někdy v budoucnu objeví další typy uživatelů. Systém musí naopak podporovat snadné přidávání nových typů operací nad těmito uživateli, protože ministerstvo školství a rektorát vydávají velké množství nových vyhlášek, úprav předpisů, atd. 1. Vyberte vhodný návrhový vzor (případně vzory) a načrtněte nejdůležitější třídy a rozhraní (interfaces nebo ryze abstraktní třídy). U klíčových metod napište jejich hlavičky a slovy vysvětlete, co která metoda dělá. 2. Rektorát si vyžádal novou funkci, která spočítá průměrnou dobu studia na univerzitě (předpokládejme, že každý student má u sebe datum zahájení a případně datum ukončení studia). Stručně popište, co je potřeba doplnit do vašeho návrhu (jaké třídy/metody/rozhraní je potřeba naimplementovat, co je potřeba změnit, atd.). 3. Co bude potřeba změnit (doimplementovat), pokud porušíme původní předpoklad ze zadání a vytvoříme nového uživatele typu Knihovník? V této otázce se zaměřme pouze na úroveň implementace business logiky aplikace. Uložení dat do databáze nebo uživatelské rozhraní neřešte.
1 Nejkratší cesta grafem
Bakalářské zkoušky (příklady otázek) podzim 2014 1 Nejkratší cesta grafem 1. Uvažujte graf s kladným ohodnocením hran (délka). Definujte formálně problém hledání nejkratší cesty mezi dvěma uzly tohoto
Maturitní otázky z předmětu PROGRAMOVÁNÍ
Wichterlovo gymnázium, Ostrava-Poruba, příspěvková organizace Maturitní otázky z předmětu PROGRAMOVÁNÍ 1. Algoritmus a jeho vlastnosti algoritmus a jeho vlastnosti, formy zápisu algoritmu ověřování správnosti
Bakalářské zkoušky (příklady otázek)
Bakalářské zkoušky (příklady otázek) podzim 2015 1 Rozděl a panuj 1. Jaká je základní myšlenka metody Rozděl a panuj? 2. Časová složitost algoritmů typu Rozděl a panuj se obvykle popisuje rekurentní rovnicí
Bakalářské zkoušky (příklady otázek)
Bakalářské zkoušky (příklady otázek) podzim 2016 1 Morfologická a syntaktická analýza 1. V kontextu zpracování přirozeného jazyka definujte pojmy tagování (tagging) a parsování (parsing). 2. Proveďte ručně
Profilová část maturitní zkoušky 2017/2018
Střední průmyslová škola, Přerov, Havlíčkova 2 751 52 Přerov Profilová část maturitní zkoušky 2017/2018 TEMATICKÉ OKRUHY A HODNOTÍCÍ KRITÉRIA Studijní obor: 78-42-M/01 Technické lyceum Předmět: TECHNIKA
Maturitní témata Školní rok: 2015/2016
Maturitní témata Školní rok: 2015/2016 Ředitel školy: Předmětová komise: Předseda předmětové komise: Předmět: PhDr. Karel Goš Informatika a výpočetní technika Mgr. Ivan Studnička Informatika a výpočetní
1 Webový server, instalace PHP a MySQL 13
Úvod 11 1 Webový server, instalace PHP a MySQL 13 Princip funkce webové aplikace 13 PHP 14 Principy tvorby a správy webového serveru a vývojářského počítače 14 Co je nezbytné k instalaci místního vývojářského
Maturitní témata. IKT, školní rok 2017/18. 1 Struktura osobního počítače. 2 Operační systém. 3 Uživatelský software.
Maturitní témata IKT, školní rok 2017/18 1 Struktura osobního počítače Von Neumannova architektura: zakreslete, vysvětlete její smysl a popište, jakým způsobem se od ní běžné počítače odchylují. Osobní
Profilová část maturitní zkoušky 2013/2014
Střední průmyslová škola, Přerov, Havlíčkova 2 751 52 Přerov Profilová část maturitní zkoušky 2013/2014 TEMATICKÉ OKRUHY A HODNOTÍCÍ KRITÉRIA Studijní obor: 78-42-M/01 Technické lyceum Předmět: TECHNIKA
Bakalářské zkoušky (příklady otázek)
Bakalářské zkoušky (příklady otázek) jaro 209 Automaty (3 body) Nechť A a B jsou regulární jazyky nad abecedou {0, }. Rozhodněte, zda následující jazyky jsou regulární, a svou odpověď zdůvodněte.. A B
Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od podzimu 2014
Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od podzimu 204 Zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia
Obor: Informatika Únor 2006 Okruh: Základy matematiky Otázka: 1. Jméno: Bodů:...
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
1. Webový server, instalace PHP a MySQL 13
Úvod 11 1. Webový server, instalace PHP a MySQL 13 Princip funkce webové aplikace 13 PHP 14 Principy tvorby a správy webového serveru a vývojářského počítače 14 Co je nezbytné k instalaci místního vývojářského
Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od jara 2017
Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od jara 207 Zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia
Oborové číslo Hodnocení - část A Hodnocení - část B Hodnocení - část A+B. 1. úloha (4 body) Kolik existuje cest délky 4 v grafu K11? 2.
PŘIJÍMACÍ TEST Z INFORMATIKY A MATEMATIKY NAVAZUJÍCÍ MAGISTERSKÉ STUDIUM V OBORU APLIKOVANÁ INFORMATIKA FAKULTA INFORMATIKY A MANAGEMENTU UNIVERZITY HRADEC KRÁLOVÉ ČÁST A Oborové číslo Hodnocení - část
Obor: Informatika Červen 2005 Okruh: Základy matematiky Otázka: 1. Jméno: Bodů:...
Inf-M-1 Obor: Informatika Červen 2005 Okruh: Základy matematiky Otázka: 1. Uvažujte funkci f(x) =ln(x + p x 2 +1): Najděte její definiční obor, vypočtěte jednostranné limity v krajních bodech definičních
Oborové číslo Hodnocení - část A Hodnocení - část B Hodnocení - část A+B
PŘIJÍMACÍ TEST Z INFORMATIKY A MATEMATIKY NAVAZUJÍCÍ MAGISTERSKÉ STUDIUM V OBORU APLIKOVANÁ INFORMATIKA FAKULTA INFORMATIKY A MANAGEMENTU UNIVERZITY HRADEC KRÁLOVÉ ČÁST A Oborové číslo Hodnocení - část
MBI - technologická realizace modelu
MBI - technologická realizace modelu 22.1.2015 MBI, Management byznys informatiky Snímek 1 Agenda Technická realizace portálu MBI. Cíle a principy technického řešení. 1.Obsah portálu - objekty v hierarchiích,
Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od jara 2016
Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od jara 206 Zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia
Oborové číslo Hodnocení - část A Hodnocení - část B Hodnocení - část A+B
PŘIJÍMACÍ TEST Z INFORMATIKY A MATEMATIKY NAVAZUJÍCÍ MAGISTERSKÉ STUDIUM V OBORU APLIKOVANÁ INFORMATIKA FAKULTA INFORMATIKY A MANAGEMENTU UNIVERZITY HRADEC KRÁLOVÉ ČÁST A Oborové číslo Hodnocení - část
Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od podzimu 2016
Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od podzimu 2016 Zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia
Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od podzimu 2015
Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od podzimu 05 Zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia
Matematika I A ukázkový test 1 pro 2014/2015
Matematika I A ukázkový test 1 pro 2014/2015 1. Je dána soustava rovnic s parametrem a R x y + z = 1 x + y + 3z = 1 (2a 1)x + (a + 1)y + z = 1 a a) Napište Frobeniovu větu (existence i počet řešení). b)
Semestrální práce 2 znakový strom
Semestrální práce 2 znakový strom Ondřej Petržilka Datový model BlockFileRecord Bázová abstraktní třída pro záznam ukládaný do blokového souboru RhymeRecord Konkrétní třída záznamu ukládaného do blokového
VZOROVÝ STIPENDIJNÍ TEST Z INFORMAČNÍCH TECHNOLOGIÍ
VZOROVÝ STIPENDIJNÍ TEST Z INFORMAČNÍCH TECHNOLOGIÍ 1. Dědičnost v OOP umožňuje: a) dědit vlastnosti od jiných tříd a dále je rozšiřovat b) dědit vlastnosti od jiných tříd, rozšiřovat lze jen atributy
2) Napište algoritmus pro vložení položky na konec dvousměrného seznamu. 3) Napište algoritmus pro vyhledání položky v binárním stromu.
Informatika 10. 9. 2013 Jméno a příjmení Rodné číslo 1) Napište algoritmus pro rychlé třídění (quicksort). 2) Napište algoritmus pro vložení položky na konec dvousměrného seznamu. 3) Napište algoritmus
8 Třídy, objekty, metody, předávání argumentů metod
8 Třídy, objekty, metody, předávání argumentů metod Studijní cíl Tento studijní blok má za cíl pokračovat v základních prvcích jazyka Java. Konkrétně bude věnována pozornost třídám a objektům, instančním
Výroková a predikátová logika - III
Výroková a predikátová logika - III Petr Gregor KTIML MFF UK ZS 2017/2018 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - III ZS 2017/2018 1 / 16 2-SAT 2-SAT Výrok je v k-cnf, je-li v CNF a
TÉMATICKÝ OKRUH Softwarové inženýrství
TÉMATICKÝ OKRUH Softwarové inženýrství Číslo otázky : 24. Otázka : Implementační fáze. Postupy při specifikaci organizace softwarových komponent pomocí UML. Mapování modelů na struktury programovacího
Náhled testu. Přijímací zkouška magisterského studia. konečný automat bez zbytečných stavů, který přijímá jazyk popsaný tímto výrazem, má:
Přijímací zkouška magisterského studia Moodle Test MSP Testy VzorTest-2 Pokus 1 Jste přihlášeni jako Josef Kolář (Odhlásit se) Info Výsledky Náhled Upravit Náhled testu 1 Je dán regulární výraz. Minimální
Zdůvodněte, proč funkce n lg(n) roste alespoň stejně rychle nebo rychleji než než funkce lg(n!). Symbolem lg značíme logaritmus o základu 2.
1 3 4 5 6 7 8 9 10 11 1 13 14 15 16 17 18 19 0 1 3 4 5 6 7 8 9 30 31 3 Zdůvodněte, proč funkce f(n) = n log(n) 1 n 1/ roste rychleji než funkce g(n) = n. Zdůvodněte, proč funkce f(n) = n 3/ log(n) roste
ALGEBRA. Téma 5: Vektorové prostory
SLEZSKÁ UNIVERZITA V OPAVĚ Matematický ústav v Opavě Na Rybníčku 1, 746 01 Opava, tel. (553) 684 611 DENNÍ STUDIUM Téma 5: Vektorové prostory Základní pojmy Vektorový prostor nad polem P, reálný (komplexní)
ALGORITMIZACE A PROGRAMOVÁNÍ
Metodický list č. 1 Algoritmus a jeho implementace počítačovým programem Základním cílem tohoto tematického celku je vysvětlení pojmů algoritmus a programová implementace algoritmu. Dále je cílem seznámení
Vyučovací hodina. 1vyučovací hodina: 2vyučovací hodiny: Opakování z minulé hodiny. Procvičení nové látky
Vyučovací hodina 1vyučovací hodina: Opakování z minulé hodiny Nová látka Procvičení nové látky Shrnutí 5 min 20 min 15 min 5 min 2vyučovací hodiny: Opakování z minulé hodiny Nová látka Procvičení nové
Náhled testu. Přijímací zkouška magisterského studia. konečný automat bez zbytečných stavů, který přijímá jazyk popsaný tímto výrazem, má:
1 z 6 14.11.2017 0:03 Přijímací zkouška magisterského studia Moodle Test MSP Testy VzorTest-2 Pokus 1 Jste přihlášeni jako Josef Kolář (Odhlásit se) Náhled testu 1 Je dán regulární výraz. Minimální deterministický
Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od jara 2014
Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od jara 2014 Zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia
maticeteorie 1. Matice A je typu 2 4, matice B je typu 4 3. Jakých rozměrů musí být matice X, aby se dala provést
Úlohy k zamyšlení 1. Zdůvodněte, proč třetí řádek Hornerova schématu pro vyhodnocení polynomu p v bodě c obsahuje koeficienty polynomu r, pro který platí p(x) = (x c) r(x) + p(c). 2. Dokažte, že pokud
Algoritmizace prostorových úloh
INOVACE BAKALÁŘSKÝCH A MAGISTERSKÝCH STUDIJNÍCH OBORŮ NA HORNICKO-GEOLOGICKÉ FAKULTĚ VYSOKÉ ŠKOLY BÁŇSKÉ - TECHNICKÉ UNIVERZITY OSTRAVA Algoritmizace prostorových úloh Datové struktury Daniela Szturcová
Inovace tohoto kurzu byla spolufinancována z Evropského sociálního fondu a státního rozpočtu České republiky.
Inovace tohoto kurzu byla spolufinancována z Evropského sociálního fondu a státního rozpočtu České republiky. Projekt ESF OP VK reg.č. CZ.1.07/2.2.00/28.0209 Elektronické opory a e-learning pro obory výpočtového
Algoritmizace prostorových úloh
INOVACE BAKALÁŘSKÝCH A MAGISTERSKÝCH STUDIJNÍCH OBORŮ NA HORNICKO-GEOLOGICKÉ FAKULTĚ VYSOKÉ ŠKOLY BÁŇSKÉ - TECHNICKÉ UNIVERZITY OSTRAVA Algoritmizace prostorových úloh Datové struktury Daniela Szturcová
Okruhy z odborných předmětů
VYŠŠÍ ODBORNÁ ŠKOLA INFORMAČNÍCH STUDIÍ A STŘEDNÍ ŠKOLA ELEKTROTECHNIKY, MULTIMÉDIÍ A INFORMATIKY Novovysočanská 280/48, 190 00 Praha 9 Pracoviště VOŠ: Pacovská 350/4, 140 00 Praha 4 Okruhy z odborných
SII - Informatika. 1. Atribut relace, jehož hodnota jednoznačně určuje prvek v jiné relaci, se nazývá:
SII - Informatika Způsob vyhodnocení: Při vyhodnocení budou za nesprávné odpovědi strhnuty body. 1. Atribut relace, jehož hodnota jednoznačně určuje prvek v jiné relaci, se nazývá: a) sekundární klíč b)
MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ
MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ 1) PROGRAM, ZDROJOVÝ KÓD, PŘEKLAD PROGRAMU 3 2) HISTORIE TVORBY PROGRAMŮ 3 3) SYNTAXE A SÉMANTIKA 3 4) SPECIFIKACE
Přijímací zkouška - matematika
Přijímací zkouška - matematika Jméno a příjmení pište do okénka Číslo přihlášky Číslo zadání 1 Grafy 1 Pro který z následujících problémů není znám žádný algoritmus s polynomiální časovou složitostí? Problém,
Výčtový typ strana 67
Výčtový typ strana 67 8. Výčtový typ V této kapitole si ukážeme, jak implementovat v Javě statické seznamy konstant (hodnot). Příkladem mohou být dny v týdnu, měsíce v roce, planety obíhající kolem slunce
14.4.2010. Obsah přednášky 7. Základy programování (IZAPR) Přednáška 7. Parametry metod. Parametry, argumenty. Parametry metod.
Základy programování (IZAPR) Přednáška 7 Ing. Michael Bažant, Ph.D. Katedra softwarových technologií Kancelář č. 229, Náměstí Čs. legií Michael.Bazant@upce.cz Obsah přednášky 7 Parametry metod, předávání
HLEDEJCENY.mobi. Obsah. Mobilní verze e-shopu. Důvody instalace
Obsah HLEDEJCENY.mobi Mezi Vodami 1952/9 e-mail: info@hledejceny.cz HLEDEJCENY.mobi... 1 Mobilní verze e-shopu... 1 Důvody instalace... 1 Výhody... 2 Co je k mobilní verzi potřeba... 2 Objednávka služby...
Střední průmyslová škola elektrotechnická Praha 10, V Úžlabině 320 M A T U R I T N Í T É M A T A P Ř E D M Ě T U
Střední průmyslová škola elektrotechnická Praha 10, V Úžlabině 320 M A T U R I T N Í T É M A T A P Ř E D M Ě T U P R O G R A M O V É V Y B A V E N Í Studijní obor: 18-20-M/01 Informační technologie Školní
Matematika I A ukázkový test 1 pro 2011/2012. x + y + 3z = 1 (2a 1)x + (a + 1)y + z = 1 a
Matematika I A ukázkový test 1 pro 2011/2012 1. Je dána soustava rovnic s parametrem a R x y + z = 1 a) Napište Frobeniovu větu. x + y + 3z = 1 (2a 1)x + (a + 1)y + z = 1 a b) Vyšetřete počet řešení soustavy
VzorTest-1. Prohlídka náhledu
1 z 11 14.11.2017 11:30 Přijímací zkouška magisterského studia Moodle Test MSP Testy VzorTest-1 Prohlídka náhledu Jste přihlášeni jako Josef Kolář (Odhlásit se) Info Výsledky Náhled Upravit VzorTest-1
Základní pojmy. Úvod do programování. Základní pojmy. Zápis algoritmu. Výraz. Základní pojmy
Úvod do programování Michal Krátký 1,Jiří Dvorský 1 1 Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programování, 2004/2005 Procesor Procesorem je objekt, který vykonává algoritmem popisovanou
TÉMATICKÝ OKRUH Softwarové inženýrství
TÉMATICKÝ OKRUH Softwarové inženýrství Číslo otázky : 25. Otázka : Komponentní technologie - základní pojmy a principy, metody specifikace komponent. Obsah : 1. Základní pojmy 1.1 Komponenta Komponenta
Lineární datové struktury
Lineární datové struktury doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 13. března 2017 Jiří Dvorský (VŠB TUO) Lineární datové
Zdrojem většiny příkladů je sbírka úloh 1. cvičení ( ) 2. cvičení ( )
Příklady řešené na cvičení LA II - LS 1/13 Zdrojem většiny příkladů je sbírka úloh http://kam.mff.cuni.cz/~sbirka/ 1. cvičení (..13) 1. Rozhodněte, které z následujících operací jsou skalárním součinem
Výroková a predikátová logika - XIII
Výroková a predikátová logika - XIII Petr Gregor KTIML MFF UK ZS 2013/2014 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - XIII ZS 2013/2014 1 / 13 Úvod Algoritmická (ne)rozhodnutelnost Které
Zadání druhého zápočtového projektu Základy algoritmizace, 2005
Zadání druhého zápočtového projektu Základy algoritmizace, 2005 Jiří Dvorský 2 května 2006 Obecné pokyny Celkem je k dispozici 8 zadání příkladů Každý student obdrží jedno zadání Vzhledem k tomu, že odpadly
VISUAL BASIC. Práce se soubory
VISUAL BASIC Práce se soubory Práce se soubory 1/2 2 Vstupní data pro programy bývají uloženy do souborů Vstupy pro výpočet, nastavení vzhledu aplikace Výsledky práce programu je potřeba uchovat uložit
Bakalářské zkoušky (příklady otázek)
Bakalářské zkoušky (příklady otázek) léto 2016 1 Toky v sítích 1. Definujte problém maximálního toku v síti. 2. Zapište v pseudokódu Fordův-Fulkersonův algoritmus na hledání maximálního toku. 3. Dokažte,
ˇ razen ı rychlejˇ s ı neˇ z kvadratick e Karel Hor ak, Petr Ryˇsav y 20. dubna 2016 Katedra poˇ c ıtaˇ c u, FEL, ˇ CVUT
řazení rychlejší než kvadratické Karel Horák, Petr Ryšavý 20. dubna 2016 Katedra počítačů, FEL, ČVUT Příklad 1 Která z následujících posloupností představuje haldu uloženou v poli? 1. 9 5 4 6 3 2. 5 4
Oborové číslo Hodnocení - část A Hodnocení - část B Hodnocení - část A+B
PŘIJÍMACÍ TEST Z INFORMATIKY A MATEMATIKY NAVAZUJÍCÍ MAGISTERSKÉ STUDIUM V OBORU APLIKOVANÁ INFORMATIKA FAKULTA INFORMATIKY A MANAGEMENTU UNIVERZITY HRADEC KRÁLOVÉ ČÁST A Oborové číslo Hodnocení - část
8.2 Používání a tvorba databází
8.2 Používání a tvorba databází Slide 1 8.2.1 Základní pojmy z oblasti relačních databází Slide 2 Databáze ~ Evidence lidí peněz věcí... výběry, výpisy, početní úkony Slide 3 Pojmy tabulka, pole, záznam
Typy souborů ve STATISTICA. Tento článek poslouží jako přehled hlavních typů souborů v programu
StatSoft Typy souborů ve STATISTICA Tento článek poslouží jako přehled hlavních typů souborů v programu STATISTICA, ukáže Vám jejich možnosti a tím Vám dovolí využívat program efektivněji. Jistě jste již
Návod a pokyny k provedení předzápisu do 1. ročníku FAV v ak. roce 2017/2018. navazující magisterské studium - kombinovaná forma studia
Návod a pokyny k provedení předzápisu do 1. ročníku FAV v ak. roce 2017/2018 navazující magisterské studium - kombinovaná forma studia Předzápis se provádí v několika krocích, které lze shrnout do následujícího
Roční periodická zpráva projektu
WAK-1F44C-2005-2 WAK System Název projektu: Automatizovaná výměna dat mezi informačními systémy krizového řízení v dopravě s jednotným univerzálním a implementovaným rozhraním založeným na standardu webových
Softwarové komponenty a Internet
Softwarové komponenty a Internet Doc. Dr. Ing. Miroslav Beneš Katedra informatiky FEI VŠB-TU Ostrava Miroslav.Benes@vsb.cz Obsah přednášky Motivace Vývoj přístupů k tvorbě programů Definice komponenty
Dynamicky vázané metody. Pozdní vazba, virtuální metody
Dynamicky vázané metody Pozdní vazba, virtuální metody Motivace... class TBod protected: float x,y; public: int vrat_pocet_bodu() return 1; ; od třídy TBod odvodíme: class TUsecka: public TBod protected:
NALG 001 Lineární algebra a geometrie 1, zimní semestr MFF UK Doba řešení: 3 hodiny
NALG 001 Lineární algebra a geometrie 1, zimní semestr MFF UK Závěrečná zkouška verze cvičná 9.1.2013 Doba řešení: 3 hodiny Přednášející: L. Barto, J. Tůma Křestní jméno: Příjmení: Instrukce Neotvírejte
APS Administrator.OP
APS Administrator.OP Rozšiřující webový modul pro APS Administrator Přehled přítomnosti osob v oblastech a místnostech Instalační a uživatelská příručka 2004 2013,TECH FASS s.r.o., Věštínská 1611/19, Praha,
2 PŘÍKLAD IMPORTU ZATÍŽENÍ Z XML
ROZHRANÍ ESA XML Ing. Richard Vondráček SCIA CZ, s. r. o., Thákurova 3, 160 00 Praha 6 www.scia.cz 1 OTEVŘENÝ FORMÁT Jednou z mnoha užitečných vlastností programu ESA PT je podpora otevřeného rozhraní
Programovací jazyk Pascal
Programovací jazyk Pascal Syntaktická pravidla (syntaxe jazyka) přesná pravidla pro zápis příkazů Sémantická pravidla (sémantika jazyka) pravidla, která každému příkazu přiřadí přesný význam Všechny konstrukce
AUTOMATY A GRAMATIKY. Pavel Surynek. Kontextové uzávěrové vlastnosti Turingův stroj Rekurzivně spočetné jazyky Kódování, enumerace
AUTOMATY A 11 GRAMATIKY Pavel Surynek Univerzita Karlova v Praze Matematicko-fyzikální fakulta Katedra teoretické informatiky a matematické logiky Kontextové uzávěrové vlastnosti Turingův stroj Rekurzivně
Vzdělávací obsah předmětu
Vzdělávací obsah předmětu 1. správně se přihlašuje ve školní síti využívá dostupné školní informační zdroje a techniku pracuje s informacemi a softwarovým vybavením ve školní síti v souladu se školním
Cvičení z Lineární algebry 1
Cvičení z Lineární algebry Michael Krbek podzim 2003 2392003 Hodina Jsou dána komplexní čísla z = +2 i a w = 2 i Vyjádřete c algebraickém tvaru (z + w) 3,, (zw), z w 2 Řešte v komplexním oboru rovnice
Střední průmyslová škola elektrotechnická Praha 10, V Úžlabině 320
Střední průmyslová škola elektrotechnická Praha 10, V Úžlabině 320 M A T U R I T N Í T É M A T A P Ř E D M Ě T U P R O G R A M O V É V Y B A V E N Í Studijní obor: 18-20-M/01 Informační technologie Školní
Ukládání a vyhledávání XML dat
XML teorie a praxe značkovacích jazyků (4IZ238) Jirka Kosek Poslední modifikace: $Date: 2014/12/04 19:41:24 $ Obsah Ukládání XML dokumentů... 3 Ukládání XML do souborů... 4 Nativní XML databáze... 5 Ukládání
Logika a logické programování
Logika a logické programování témata ke zkoušce Poslední aktualizace: 16. prosince 2009 Zkouška je písemná, skládá se obvykle ze sedmi otázek (může být více nebo méně, podle náročnosti otázek), z toho
ADT/ADS = abstraktní datové typy / struktury
DT = datové typy obor hodnot, které může proměnná nabývat, s operacemi na tomto oboru určen: obor hodnot + výpočetní operace např. INT = { 2 147 483 648 až +2 147 483 647} + {+,,*,/,} ADT/ADS = abstraktní
Modely datové. Další úrovní je logická úroveň Databázové modely Relační, Síťový, Hierarchický. Na fyzické úrovni se jedná o množinu souborů.
Modely datové Existují různé úrovně pohledu na data. Nejvyšší úroveň je úroveň, která zachycuje pouze vztahy a struktury dat samotných. Konceptuální model - E-R model. Další úrovní je logická úroveň Databázové
Přijímací zkouška na navazující magisterské studium 2018
Přijímací zkouška na navazující magisterské studium 2018 Řešení příkladů pečlivě odůvodněte. Příklad 1 (2 bodů) Studijní program: Studijní obory: Varianta A Matematika MMUI Navrhněte deterministický konečný
Kurz je rozdělen do čtyř bloků, které je možné absolvovat i samostatně. Podmínkou pro vstup do kurzu je znalost problematiky kurzů předešlých.
Soubor kurzů XHTML, CSS, PHP a MySQL Kurz je rozdělen do čtyř bloků, které je možné absolvovat i samostatně. Podmínkou pro vstup do kurzu je znalost problematiky kurzů předešlých. Jeden blok se skládá
Manuál pro implementaci aplikace Na poštu
Manuál pro implementaci aplikace Na poštu Verze: 1.4.2013 0 Obsah 1. Popis služby... 2 2. Jak to funguje... 2 3. Ukázka souboru... 3 4. Implementace... 4 5. Specifikace souboru... 5 6. Logika vyhledávání...
Poslední aktualizace: 14. října 2011
Lexikální analýza Překladače, přednáška č. 2 Šárka Vavrečková Ústav informatiky, FPF SU Opava sarka.vavreckova@fpf.slu.cz http://fpf.slu.cz/ vav10ui Poslední aktualizace: 14. října 2011 Symboly Co je to
UniLog-D. v1.01 návod k obsluze software. Strana 1
UniLog-D v1.01 návod k obsluze software Strana 1 UniLog-D je PC program, který slouží k přípravě karty pro záznam událostí aplikací přístroje M-BOX, dále pak k prohlížení, vyhodnocení a exportům zaznamenaných
APS Web Panel. Rozšiřující webový modul pro APS Administrator. Webové rozhraní pro vybrané funkce programového balíku APS Administrator
APS Web Panel Rozšiřující webový modul pro APS Administrator Webové rozhraní pro vybrané funkce programového balíku APS Administrator Instalační a uživatelská příručka 2004 2016,TECH FASS s.r.o., Věštínská
Téma 8: Konfigurace počítačů se systémem Windows 7 IV
Téma 8: Konfigurace počítačů se systémem Windows 7 IV 1 Teoretické znalosti V tomto cvičení budete pracovat se správou vlastností systému, postupně projdete všechny karty tohoto nastavení a vyzkoušíte
Příklad 1/23. Pro rostoucí spojité fukce f(x), g(x) platí f(x) Ω(g(x)). Z toho plyne, že: a) f(x) Ο(g(x)) b) f(x) Θ(g(x)) d) g(x) Ω(f(x))
Příklad 1/23 Pro rostoucí spojité fukce f(x), g(x) platí f(x) Ω(g(x)). Z toho plyne, že: a) f(x) Ο(g(x)) b) f(x) Θ(g(x)) c) g(x) Θ(f(x)) d) g(x) Ω(f(x)) e) g(x) Ο(f(x)) 1 Příklad 2/23 Pro rostoucí spojité
Čtvrtek 8. prosince. Pascal - opakování základů. Struktura programu:
Čtvrtek 8 prosince Pascal - opakování základů Struktura programu: 1 hlavička obsahuje název programu, použité programové jednotky (knihovny), definice konstant, deklarace proměnných, všechny použité procedury
Použití databází na Webu
4IZ228 tvorba webových stránek a aplikací Jirka Kosek Poslední modifikace: $Date: 2010/11/18 11:33:52 $ Obsah Co nás čeká... 3 Architektura webových databázových aplikací... 4 K čemu se používají databázové
IE1 jazyk HTML a kaskádové styly
IE1 jazyk HTML a kaskádové styly Tvorbu webových stránek v jazyce HTML a jejich formátování pomocí kaskádových stylů (CSS) budeme zkoušet na souvislém příkladu. Můžete si zvolit vlastní téma webové prezentace.
Stromy, haldy, prioritní fronty
Stromy, haldy, prioritní fronty prof. Ing. Pavel Tvrdík CSc. Katedra počítačů FEL České vysoké učení technické DSA, ZS 2008/9, Přednáška 6 http://service.felk.cvut.cz/courses/x36dsa/ prof. Pavel Tvrdík
Automaty a gramatiky(bi-aag) Motivace. 1. Základní pojmy. 2 domácí úkoly po 6 bodech 3 testy za bodů celkem 40 bodů
BI-AAG (2011/2012) J. Holub: 1. Základní pojmy p. 2/29 Hodnocení předmětu BI-AAG (2011/2012) J. Holub: 1. Základní pojmy p. 4/29 Automaty a gramatiky(bi-aag) 1. Základní pojmy Jan Holub Katedra teoretické
Výroková a predikátová logika - XII
Výroková a predikátová logika - XII Petr Gregor KTIML MFF UK ZS 2015/2016 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - XII ZS 2015/2016 1 / 15 Algebraické teorie Základní algebraické teorie
Obsah. Začínáme programovat v Ruby on Rails 9. Úvod 11. 1. Vítejte v Ruby 15. O autorovi 9 Poděkování 9
Začínáme programovat v Ruby on Rails 9 O autorovi 9 Poděkování 9 Úvod 11 Komu je kniha určena 11 Jak je kniha uspořádána 11 Co ke knize potřebujete 12 Konvence 12 Zdrojový kód 13 Poznámka redakce českého
XML a XSLT. Kapitola seznamuje s šablonami XSLT a jejich použití při transformaci z XML do HTML
XML a XSLT Kapitola seznamuje s šablonami XSLT a jejich použití při transformaci z XML do HTML Zdroje: M. ŽÁK: XML (začínáme programovat), Grada Publishing, 2005 I. MLÝNKOVÁ, M. NEČASKÝ, J. POKORNÝ, K.
Implementace LL(1) překladů
Překladače, přednáška č. 6 Ústav informatiky, FPF SU Opava sarka.vavreckova@fpf.slu.cz Poslední aktualizace: 30. října 2007 Postup Programujeme syntaktickou analýzu: 1 Navrhneme vhodnou LL(1) gramatiku
Návrh a tvorba WWW stránek 1/14. PHP a databáze
Návrh a tvorba WWW stránek 1/14 PHP a databáze nejčastěji MySQL součástí balíčků PHP navíc podporuje standard ODBC PHP nemá žádné šablony pro práci s databází princip práce s databází je stále stejný opakované
Uživatelský manuál. Aplikace GraphViewer. Vytvořil: Viktor Dlouhý
Uživatelský manuál Aplikace GraphViewer Vytvořil: Viktor Dlouhý Obsah 1. Obecně... 3 2. Co aplikace umí... 3 3. Struktura aplikace... 4 4. Mobilní verze aplikace... 5 5. Vytvoření projektu... 6 6. Části
Vysvětlete funkci a popište parametry jednotlivých komponent počítače a periferních zařízení.
1 Struktura osobního počítače Zakreslete základní schéma počítače podle Johna von Neumanna. Popište základní strukturu osobního počítače. Vysvětlete funkci a popište parametry jednotlivých komponent počítače
Oborové číslo Hodnocení - část A Hodnocení - část B Hodnocení - část A+B
PŘIJÍMACÍ TEST Z INFORMATIKY A MATEMATIKY NAVAZUJÍCÍ MAGISTERSKÉ STUDIUM V OBORU APLIKOVANÁ INFORMATIKA FAKULTA INFORMATIKY A MANAGEMENTU UNIVERZITY HRADEC KRÁLOVÉ ČÁST A Oborové číslo Hodnocení - část
Úvod do MS Access. Modelování v řízení. Ing. Petr Kalčev
Úvod do MS Access Modelování v řízení Ing. Petr Kalčev Postup při tvorbě aplikace Vytvoření tabulek Vytvoření relací Vytvoření dotazů Vytvoření formulářů Vytvoření sestav Tabulky Slouží k definování polí,