2. Svoje řešení pojmenujte podle čísel zadání úloh: uloha1. sgpbprj uloha4. sgpbprj



Podobné dokumenty
Regionální kolo soutěže Mladý programátor 2014, kategorie A, B

2. Svoje řešení pojmenujte podle čísel zadání úloh: uloha1.sgpbprj uloha4.sgpbprj

Mezinárodní kolo soutěže Baltík 2010, kategorie C a D

Regionální kolo soutěže Mladý programátor 2012, kategorie A, B

Celostátní kolo soutěže Mladý programátor 2013, kategorie C, D

Celostátní kolo soutěže Mladý programátor 2016, kategorie C

Celostátní kolo soutěže Baltie 2011, kategorie C, D

Regionální kolo soutěže Baltík 2009, kategorie A a B

Celostátní kolo soutěže Mladý programátor 2013, kategorie A, B

Regionální kolo soutěže Mladý programátor 2016, kategorie A, B

Při bodování se mohou přidělovat body za každou dílčí úlohu (tj. a, b ), maximální bodové hodnocení je uvedeno na konci každé dílčí úlohy.

Mezinárodní kolo soutěže Baltík 2007, kategorie C

Školní kolo soutěže Mladý programátor 2014, kategorie A, B

Školní kolo soutěže Mladý programátor 2015, kategorie A, B

Celostátní kolo soutěže Mladý programátor 2014, kategorie A, B

Zadání úloh mezinárodního kola soutěže Baltík 2006

Mezinárodní kolo soutěže Baltík 2009, kategorie A a B

Mezinárodní kolo soutěže Baltie 2011, kategorie C, D

Školní kolo soutěže Baltík 2011, kategorie C

Regionální kolo soutěže Mladý programátor 2015, kategorie A, B

Celostátní kolo soutěže Baltík 2007, kategorie C

Celostátní kolo soutěže Mladý programátor 2012, kategorie A, B

Školní kolo soutěže Mladý programátor 2014, kategorie C

Celostátní kolo soutěže Mladý programátor 2015, kategorie C

Regionální kolo soutěže Baltík 2008, kategorie A a B

Školní kolo soutěže Mladý programátor 2013, kategorie C, D

Mezinárodní kolo soutěže Baltík 2007, kategorie A a B

Celostátní kolo soutěže Mladý programátor 2012, kategorie C, D

Regionální kolo soutěže Baltík 2010, kategorie A a B

Celostátní kolo soutěže Baltík 2007, kategorie A a B

Regionální kolo soutěže Mladý programátor 2017, kategorie A, B

Celostátní kolo soutěže Baltík 2008, kategorie C

Regionální kolo soutěže Mladý programátor 2019, kategorie A, B

Národní kolo soutěže Baltie 2011, kategorie A a B

Školní kolo soutěže Baltík 2009, kategorie C

Regionální kolo soutěže Baltík 2007, kategorie A a B

Mezinárodní kolo soutěže Baltík 2010, kategorie A a B

BARVY. Příkaz barva. Barvy TrueColor. Se objeví dialogové okno

Školní kolo soutěže Baltík 2009, kategorie A a B

POVLTAVSKÉ SETKÁNÍ BALTÍKŮ - 9.ročník a

1. Úloha - Vykládání lodí (20 bodů)

Školní kolo soutěže Baltík 2010, kategorie C, D

1. ÚLOHA Sněhurka a sedm trpaslíků (23 bodů)

Školní kolo soutěže Mladý programátor 2018, kategorie A, B

1. Baltík v zoo. b) Baltík vyčaruje ke všem třem klecím cestičky (předmět č z banky č. 2). 10 bodů

Celostátní kolo soutěže Mladý programátor 2015, kategorie A, B

Baltík 2008 zadání školního kola kategorie A a B

POVLTAVSKÉ SETKÁNÍ - SUPERHRDINOVÉ

Školní kolo soutěže Baltík 2007, kategorie A a B

Školní kolo soutěže Mladý programátor 2013, kategorie A, B. Úloha č. 1 - Baltík v zoo

Regionální kolo soutěže Mladý programátor 2013, kategorie A, B

Uloha1 šumavský prales

A) IF předmět před Baltíkem

Celostátní kolo soutěže Baltík 2010, kategorie A a B

Úloha 1 prokletá pyramida

Mezinárodní kolo soutěže Baltie 2011, kategorie A a B

Vánoční setkání ve Strakonicích 2018

Stejnou věc můžete udělat naráz v jednom příkazu. Ikonku animovaného předmětu pak stačí použít jen jednou na začátku řádku.

Hodnocení soutěžních úloh

Zadání soutěžních úloh

Regionální kolo soutěže Mladý programátor 2018, kategorie A, B

Zadání soutěžních úloh

Celostátní kolo soutěže Mladý programátor 2018, kategorie A, B

Zadání soutěžních úloh

Kreslení a vlastnosti objektů

Nastavení stránky : Levým tlačítkem myši kliknete v menu na Soubor a pak na Stránka. Ovládání Open Office.org Draw Ukládání dokumentu :

Zápis průběžné klasifikace do školního evidenčního programu BAKALÁŘI (s vystavením klasifikace na webu pro rodiče)

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:

Čtvrtek 3. listopadu. Makra v Excelu. Obecná definice makra: Spouštění makra: Druhy maker, způsoby tvorby a jejich ukládání

Školní kolo soutěže Mladý programátor 2016, kategorie A, B

Mezinárodní programátorská soutěž Baltík 2005 úlohy školního kola

Když už má vykopané cesty, může postavit domyr opět přesně podle obrázku. Domy se objeví najednou. Program opět čeká.

Soukromá střední odborná škola Frýdek-Místek, s.r.o. VY_32_INOVACE_49_IVT_MSOFFICE_05_Word

Přihlášení do systému :

Gabriela Janská. Středočeský vzdělávací institut akademie J. A. Komenského

Školní kolo soutěže Mladý programátor 2019, kategorie A, B

Práce s MS Excel v Portálu farmáře a využití pro stažení dat KN z LPIS a sestav z EPH

1. VSTUP do e-learningu

Hodnocení soutěžních úloh

INFORMATIKA PRO ZŠ. Ing. Veronika Šolcová

Výukový manuál 1 /64

DUM č. 11 v sadě. 30. Inf-6 Imagine Logo a animace pro nižší gymnázium

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Občas je potřeba nakreslit příčky, které nejsou připojeny k obvodovým stěnám, např. tak, jako na následujícím obrázku:

Comenius Logo. Úterý 20. března. Princip programování. Prostředí Comenius Logo

SYSTÉM JÍDELNA UŽIVATELSKÝ MANUÁL PRO STRÁVNÍKY

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:

Cvičení 9 Kouzelná hůlka

Aplikované úlohy Solid Edge. SPŠSE a VOŠ Liberec. Radek Havlík [ÚLOHA 32 ODKAZY A TEXTY]

Kurikulum počítačové gramotnosti pro žáky se speciálními vzdělávacími potřebami příloha ŠVP ( 2.stupeň ZŠ - 3.část )

Parametrické modelování těles. Autodesk INVENTOR. Ing. Richard Strnka, 2012

Kurikulum počítačové gramotnosti pro žáky se speciálními vzdělávacími potřebami- příloha ŠVP (středně pokročilí ročník) Metodika pro učitele

On-line dražební systém EDEN návod k použití

Zadání soutěžních úloh

Sada 1 - Základy programování

Popis základního prostředí programu AutoCAD

8. Cvičení Kopírování objektů mezi aplikacemi MS Office

Hodnocení soutěžních úloh

Po obrazovce přejede formule, před kterou se budou postupně objevovat písmena slova formule.

1. Umístěte kurzor do sloupce Datový typ na řádek s polem, ve kterém vytvořit chcete seznam.

Transkript:

Pokyny: 1. Řešení úloh ukládejte do složky, která se nachází na pracovní ploše počítače. Její název je stejný, jako je kód, který váš tým dostal přidělený (C05, C10 apod.). Řešení, uložené v jiné složce, nebude bráno v úvahu. Pokud vám dělá uložení souborů problém, požádejte o pomoc dozor konajícího učitele. 2. Svoje řešení pojmenujte podle čísel zadání úloh: uloha1. sgpbprj uloha4. sgpbprj 3. Řešení si ukládejte průběžně. Zabráníte tak zbytečným ztrátám řešení při problémech s počítačem. 4. Pokud máte jakýkoliv problém s počítačem, ohlaste ho okamžitě dozorujícímu učiteli. 5. Na pracovní ploše najdete též soubor se zadáním úloh pod názvem MP2014_RK_C_zadani.pdf, kde se na něj můžete podívat též v barevné verzi. 6. Při řešení úloh nemůžete využívat pomocné soubory! Jako řešení budou hodnoceny jen soubory: uloha1.sgpbprj, uloha2.sgpbprj, uloha3.sgpbprj nebo uloha4.sgpbprj. Bodování: Body, které jsou uvedené u jednotlivých úloh, můžete získat za funkčnost jednotlivých částí zadání. Tato hodnota se bude násobit koeficientem v hodnotě 1 2, který bude přidělován za efektivnost řešení a přehlednost programu. Skutečný počet bodů za dané řešení může být proto až dvojnásobný. Koeficient bude hodnotit, nakolik je program efektivní (krátkost řešení), zda byly ke zkrácení programu použity metody, zda byly účelně využity bloky příkazů, cykly, podmínky, proměnné, pole atd. a konečně celková elegance řešení. Program musí být také přehledný, členěný do řádků, které mohou být odsazované, je-li to účelné (např. uvnitř metody či cyklu). Pro větší přehlednost mohou být použiti metody. Jednotlivé části programu musí být okomentovány. 1

Úloha č. 1 O Popelce Programujte v režimu 2D s Baltíkem 30 bodů a) Na obrazovce se najednou objeví scéna stejná jako na obrázku. Předměty jsou: stromy (předmět č. 12), listí (předmět č. 11), domek je z banky 1 a písmena jsou z banky 7. Popelka stojí na stejném místě jako na obrázku. Po jedné sekundě se otevřou dveře, po další sekundě se v nich objeví macecha (předmět č. 3 029) a po sekundě proběhne rozhovor: macecha rozkáže: ukliď listí, po další sekundě Popelka odpoví: ano maminko, vše udělám. Nápisy budou červené, umístěné podobně jako na obrázku. Popelka rychlostí 7 postupně uklidí všechny listy, postaví se na své výchozí místo a program čeká na stisk klávesy nebo tlačítka myši na další pokračování. (10 bodů) b) V další části se objeví následující scéna: opět domek v lese, louka (předmět č. 1 122) a Baltík. Stejně jako v předchozím případě se po 1 sekundě otevřou dveře, po další sekundě se v nich objeví průhledně Popelka a po další sekundě proběhne rozhovor: co ti mám přivézt, po další sekundě odpověď to, co ti cvrnkne do klobouku Baltík oběhne rychlostí 7 louku a když se ocitne opět ve své výchozí pozici, přiletí oříšek (průhledný předmět č. 1 030). Letí z horní části louky až na Baltíka, a potom před Popelku. Tady se rozbije - proběhne animace výbuchu z předmětů č. 3 106 až 3 115, která bude trvat 2 sekundy (2 000 ms) a pak se místo oříšku objeví koruna předmět č. 4 139. Program čeká na stisk klávesy nebo tlačítka myši. (10 bodů) 2

c) Nyní se objeví poslední scéna: opět les s chaloupkou, na louce jsou květiny (předmět č. 1 139) a všude plno slunce (okolo chaloupky je rozlitá žlutá barva). Tentokrát v programu čeká princ. Začátek je stejný: po sekundě se otevřou dveře, v nich se objeví Popelka a podle stejných pravidel proběhne rozhovor: Popelko, vezmi si mě a po sekundě odpověď: vezmu, až mi natrháš květiny. Princ rychlostí 7 postupně natrhá všechny květiny, a když se ocitne zpět ve své výchozí pozici, pošle jednu květinu Popelce proběhne animace pohybu květiny od prince před Popelku. Pak se nahoře na žlutém pozadí přibližně uprostřed objeví červený nápis: A BYLA SVATBA. Velikost písmen je 20. Program čeká na stisk klávesy nebo tlačítka myši, poté se ukončí. (10 bodů) Poznámka: v programu můžete všechny texty rozhovory psát bez interpunkce (bez háčků a čárek) 3

Úloha č. 2 Řetězce Programujte v režimu Konzole. 45 bodů a) Přečtěte dva řádky ze standardního vstupu od uživatele. Každý z řádků bude tvořit jeden řetězec. A s těmito dvěma řetězci budeme v průběhu celého programu pracovat. (5 bodů) b) Do třetího řádku vypište, zdali první řetězec obsahuje na jakékoliv pozici druhý řetězec. Na velikosti písmen nezáleží, takže například AHOJ bude obsahovat řetězec hoj. V konzoli se objeví text 1. retezec obsahuje 2. retezec, pokud první řetězec obsahuje druhý, jinak 1. retezec neobsahuje 2. retezec. (8 bodů) c) Nyní budeme kontrolovat, jestli první řetězec začíná druhým řetězcem. Na velikosti písmen opět nezáleží. Do čtvrtého řádku se tedy vypíše 1. retezec zacina 2. retezcem, pokud první řetězec začíná druhým řetězcem, jinak 1. retezec nezacina 2. retezcem. (8 bodů) d) Když už jsme zkontrolovali začátek řetězce, měli bychom se podívat i na konec. Do pátého řádku vypište 1. retezec konci 2. retezcem, pokud první řetězec končí druhým řetězcem, jinak se v konzoli objeví 1. retezec nekonci 2. retezcem. (8 bodů) e) Poslední kontrolou, kterou budeme nad slovy provádět, je zjištění, jestli lze druhý zadaný řetězec složit z písmen prvního řetězce. V této části úlohy tak nebereme v potaz pořadí písmen prvního řetězce dle zadání, ale snažíme se je zamíchat takovým způsobem, aby z nich šel složit druhý řetězec. Malá písmena jsou opět chápána jako ekvivalenty velkých. 4

Pojďme si to ukázat na příkladu. Uživatel zadal jako první řetězec slovo POKUS. Pokud by byl druhý řetězec slovo puk, program nám sdělí, že je možné z písmen prvního řetězce složit ten druhý. Pokud by však byl druhý řetězec slovo buk, program odpoví, že to není možné (protože první řetězec neobsahuje písmeno b ). Pozor si také musíme dát na opakování písmen. Pokud uživatel zadá slovo ahoj a jako druhý řetězec slovo aha, program musí odpovědět, že není možné složit z písmen prvního řetězce ten druhý. Důvodem je to, že jednotlivá písmena prvního řetězce mohou být využita k sestavení druhého řetězce pouze jednou. V našem příkladě nám tak chybí k úspěšnému sestavení jedno písmeno a. V případě, že by uživatel zadal jako první řetězec slovo ahojda, pak by již bylo možné slovo aha složit. Pokud program vyhodnotí, že lze z prvního řetězce složit ten druhý, do konzole se do dalšího řádku vypíše 2. retezec lze slozit ze znaku 1. retezce, pokud to nelze, objeví se text 2. retezec nelze slozit ze znaku 1. retezce. (11 bodů) f) Umožněte uživateli zadat nové dva řetězce. Body 1. až 5. se tedy budou opakovat donekonečna. Před novým zadáním vypište do konzole jeden prázdný řádek, abychom jednotlivé případy od sebe lépe oddělili. (5 bodů) 5

Úloha č. 3 Ohňostroj Pracujete v 3D režimu 50 bodů a) Objeví se tři šedivé čtverce o rozměru 1 x 1 m. Ze spodní strany čtverců budou přilepené kuličky o poloměru 0,06 m a budou mít postupně barvu žlutou, červenou a zelenou (obr. 1 a 2 spodní strana). Vytvořte nad těmito čtverci tři typy ohňostrojů, které se postupně předvedou: obr. 1 obr. 2 1. typ bude žlutý ohňostroj ze středu šedivého čtverce, pod kterým je žlutá kulička, vylétne po sobě náhodně 10 až 15 žlutých kuliček do různých směrů nad plochu. Jejich trajektorií jsou úsečky. Kuličky mají poloměr 0,02 m, pohybují se maximálně do výšky 5 m (do šířky taky), nechávají za sebou stopu (obr. 3 pohled z boku, 4 pohled shora). Můžou vylétat takovou rychlostí, aby jejich pohyb byl pozorovatelný. Po vylétnutí poslední kuličky celý ohňostroj zmizí. Žlutá kulička, která je pod tímto čtvercem, se přebarví na modrou barvu. obr. 3 obr. 4 2. typ bude červený ohňostroj ze středu čtverce vyletí do výšky 3 m červená kulička o poloměru 0,05 m, která za sebou nezanechává stopu. Nahoře se kulička rozpadne (zmizí) a vytvoří tři menší kuličky o poloměru 0,02 m, které se začnou současně pohybovat vodorovně do tří různých směrů (můžete si směry určit, nemusí být náhodné), opět je za nimi stopa, a dolétnou zhruba do vzdálenosti 0,5 až 1 m od místa, kde vylétly. Tam z nich začnou padat barevné kuličky na zem, kde mizí. Kuličky padají současně ze všech třech konců, padají viditelnou rychlostí a z každého konce jich vypadne 20. Pak celý ohňostroj zmizí. Červená kulička, která je pod tímto čtvercem, se přebarví na modrou barvu (obr. 5). 6

3. typ bude zelený ohňostroj tento typ si vymyslíte. Po jeho předvedení ohňostroj zmizí a zelená kulička, která je pod touto destičkou se přebarví na modrou barvu. (5 bodů) Všechny tři typy ohňostrojů se po sobě předvedou, pak program čeká na stisk libovolné klávesy. (18 bodů) b) Po stisku klávesy se objeví šedá deska velikosti 10 x 10 čtverců, která je rozdělena bílou čárou na jednotlivé čtverce. Zespoda plochy bude uprostřed náhodně zvolených čtverců umístěno 7 žlutých, 7 červených a 7 zelených kuliček o poloměru 0,06 m tak, aby nebyly shora vidět. Jejich umístění je náhodné, nikde na žádném poli není víc kuliček. Každý čtverec šedivé plochy je označen písmenem a číslem. Vzadu za šedivou plochou jsou čtverce označené písmeny A až J. Vpravo od plochy budou čtverce označené čísly 0 až 9. Typ a velikost písma zvolte tak, aby bylo vhodné a viditelné (obr. 6 pohled shora na desku, 7 pohled zezdola). Pak program čeká. (12 bodů) obr. 6 c) Program vyzve uživatele, aby zadal nejprve písmeno (A až J), a pak číslo (0 až 9) tím se určí čtverec na desce. Po zadání písmena a čísla z klávesnice se v případě, že narazíte na políčko bez barevné kuličky, vypíše hlášení ohňostroj není. Hlášení se vypíše libovolným typem písma, po 1 s zmizí a čeká na další zadání. Pokud se trefíte na políčko s barevnou kuličkou, předvede se podle barvy kuličky ohňostroj žlutý, červený nebo zelený a kulička pod tímto políčkem zmodrá (dle bodu A). Program pak čeká na další zadání. Jestliže znovu zvolíte stejnou kombinaci písmena a číslice, kde už ohňostroj proběhl, program vypíše opět ohňostroj není a hlášení po 1 s zmizí. Takto můžete pokračovat dál, program se zcela ukončí při zadání písmena Q. Na ostatní znaky program nereaguje, čeká vždy na zadání správné kombinace písmena a čísla, popř. samotné písmeno Q. (20 bodů) obr. 7 7

8