A I 9 O r itrn iz a c e

Rozměr: px
Začít zobrazení ze stránky:

Download "A I 9 O r itrn iz a c e"

Transkript

1 ~ A 9 O r itrn iz a c e Zjištení, kolik císel je kladných, kolik záporných - prijde-i nula, pak cyklus skoncí Jedná se o podobný príklad, jako je predchozí. Tentokrát však pocet testovaných císel dopredu neznáme, proto použijeme cyklus rízený podmínkou na zacátku cyklu. Ukoncovacím znakem bude nula, která nepatrí ani do kladných, ani do záporných císel. Jádro cyklu bude stejné jako v predchozím algoritmu. Musí být jistota, že pocítadla kladných a záporných císel jsou vynulována. Nactení prvního císla probehne ješte pred cyklem. Je-i císlo ruzné od nuly, vstoupí se do cyklu, ve kterém je otestováno. x <> O X>O + + KLAD := KLAD + ZAP:= ZAP + Tip: Stejným zpusobem byste mohli napríklad zjištovat, kolikrát se mezi nactenými císly objevila jednicka (nebo jakékoli jiné císlo). Pak byste pocítadla KLAD ci ZAP prejmenovali treba na JEDNCKA a podmínka v jádre cyklu by netestovala, zda je císlo kladné, ci záporné, ale zda je rovno napríklad jednicce. 72

2 l Tvorba algoritmu s použitím ey"klu ~... Soucin pomocí souctu Úkolem je sestavit algoritmus, který bude umet vynásobit dve celá císla mezi sebou. Nesmí však být použita operace násobení, protože umíte jen secítat. Vzpomente si na doby, kdy vám na základní škole vysvetlovali operaci násobení a ríkali: 5 * 2 je jako 5 + 5, tedy petku sectete dvakrát 8 * 3 je jako , tedy osmicku sectete trikrát atd. Protože už umíte zobecnovat, mužete odvodit, že: A * B je jako A +A + A + + A, tedy A sectete S-krát. Úloha je jako stvorená pro cyklus se známým poctem opakování. A, S... dve císla, která mezi sebou máte vynásobit (budou zadána zvencí) C.. 0 promenná, do které budete ukládat mezivýsledky souctu, nakonec v ní bude uložen výsledek (obdoba promenné SUMA, kterou jste používali v predchozích príkladech)... rídicí promenná cyklu Promenná C musí být na zacátku prázdná. Cyklus probehne S-krát. Nactou se císla, která mají být mezi sebou vynásobena. C:= C+A Pri každém pruchodu cyklem se k tomu, co je v C, pricte další A. cyklu Po výstupu z cyklu je v C výsledek. 77

3 Algoritmizace Delení pomocí odecítání v dalším príkladu má být sestaven algoritmus, který bude umet vydelit dve celá nezáporná císla mezi sebou. Nesmí však být použita operace delení, protože umíte jen secítat a odecítat. Princip rešení bude vysvetlen na jednom (nepedagogickém) príkladu ze života: Predstavte si, že v restauraci sedí pet kamarádu, kterí si zašli na pivo. Dobre se bavili a objednávali jednu rundu za druhou, až najednou prišla" záverecná" a bylo nutno platit. Tácek byl plný cárek, ale když prišel vrchní, ani jeden si nepamatoval, kolik piv vlastne mel. Všichni si však pamatovali, že vypili stejný pocet piv, protože se objednávalo po rundách. Vrchní znalecky obhlédl stul, spocítal pivare a pak si vzal do ruky tácek: škrtl prvních pet cárek na tácku a na cisté úctence si udelal jednu cárku; protože na tácku zbylo ješte víc než pet cárek, zase jich pet škrtl a na úctenku si udelal další cárku; tento postup opakoval tak dlouho, dokud bylo na tácku víc než pet cárek (pokud pivari nelhali a pili všichni stejne, nakonec by mel zbýt úplne poškrtaný tácek). Nakonec vrchní secetl cárky na úctence a zjistil, kolik každý z hostu u stolu vypil. A B delenec zadaný zvencí (pocet cárek na tácku) delitel zadaný zvencí (pocet hostu u stolu) C promenná, do které se budou ukládat mezivýsledky odectu, nakonec v ní bude uložen podíl (úctenka) Algoritmus rešte pomocí cyklu rízeného podmínkou na zacátku. c:=o Promenná C musí být na zacátku prázdná ("cistá úctenka"). Delitel musí být ruzný od nuly, jinak by promenná A v cyklu vubec neklesala, jednalo by se o nekonecný cyklus. Rídicí podmínka cyklu: Bude se odebírat tak dlouho, dokud bude z ceho. Zobraz: C, A V promenné C je výsledek celocíselného delení, v promenné A bude zbytek. 78 ~

4 79 L Tvorba algoritmu s použitím cyklu Nejvetší spolecný delitel Najdete nejvetšího spolecného delitele dvou kladných celých císel.. Pokud jsou císla stejná, jsou zároven svým nejvetším spolecným delitelem. 2. Je-i vetší A, pak od neho odectete B, címž dostanete nové A. 3. Je-i vetší B, pak od neho odectete A, címž dostanete nové B. 4. Postup opakujete tak dlouho, dokud si císla nebudou rovna. Napríklad: Nejvetší spolecný delitel císel A = 27 a B = 2 Postup:. krok: A :=A -B = 27-2 = 5 2.krok:A:=A-B=5-2= 3 3. krok: B := B - A = 2-3 = 6 4. krok: B := B - A = 6-3 = 3 A bylo vetší, proto A je ted 5, B je porád 2 A bylo vetší, proto A je ted 3, B je porád 2 B bylo vetší, proto B je ted 6, A je porád 3 B je ted 3 a A je také 3 Ted už platí, že A = B = 3, takže jste našli nejvetšího spolecného delitele. Rídicí podmínka cyklu "Nejsou si rovny", proto se pokracuje. B je vetší, proto bude zmenšeno oa. + A je vetší, proto bude zmenšeno ob. B:= B - A A:=A- B Poznámka: Nastane-i prípad, že budete odecítat tak dlouho, až dojdete k jednicce, pak je zrejmé, že císla jsou nesoudelná (nemají jiného spolecného delitele než jednicku).

5 Algoritmizace Soucet císlic v císle Zjistete soucet císlic v zadaném celém císle Použijete funkci celocíselného delení, pomocí které mužete zjistit poslední císlici císla - viz uvedený algoritmus vpravo. > A... zadané císlo POM... pomocná bunka, do které se ukládá podíl celocíselného delení Zadané císlo podelte celocíselne deseti, tím dostanete císlo 0x menší; poslední cifra z puvodního císla je ztracena. POM := A div(0) CS := A - 0*POM Vynásobíte-i nove získané císlo nazpet deseti, nedostanete puvodní císlo - liší se od neho tím, že má na konci nulu. Odectete-i toto císlo od puvodního, dostanete poslední císlici puvodního císla. Musí být jistota, že SUMA je prázdná. SUMA:= O Muže být podeleno 0? Nejvyšší císlice Celocíselné delení 0 Zjištení poslední císlice v císle POM:= A div (0) CS := A - POM* O SUMA := SUMA + A Prictení poslední císlice k sume Novým A bude staré A s uríznutou poslední císlicí (je schováno v POM). 80

6 Tvorba algoritmu s použitím cyklu Test, kolikrát se vyskytuje urcitá císlice v daném císle Zvencí nactete nekolikamístné císlo a císlici. Zjistete, kolikrát se v daném císle vyskytuje urcená císlice. Algoritmus bude pracovat na velice podobném principu jako predchozí algoritmus - pomocí celocíselného delení deseti budete postupne separovat císlici, která bude v tu chvíli poslední, a to tak dlouho, dokud z císla neco zbude (tedy dokud nebude nula). Jakmile císlici od císla oddelíte, otestujete ji na shodu se zadanou císlicí. Použijete opet cyklus rízený podmínkou. A... vícemístné X 0.0 císlo zadané zvencí císlice (zadaná zvencí), která má být hledána v císle POM pomocná bunka, do které bude ukládán podíl celocíselného delení POC pocítadlo výskytu císlice v císle Vynuluje pocítadlo výskytu císlice v císle. Bude celocíselne delit deseti tak dlouho, dokud bude co. POM := A div (0) CS:= A - POM*0 + A:= POM Poznámka: V tomto algoritmu jste upravílí rídicí podmínku trochu jinak než v predchozím - cyklus probehne jedenkrát navíc a poslední císlici ješte necháte otestovat v cyklu. Kdybyste použílí stejnou rídicí podmínku jako v predchozím algoritmu, museli byste ješte zbylou císlici po výstupu z cyklu otestovat a v prípade shody zvýšit pocítadlo o jednicku. ~

7 Tvorba algoritmu s použitím cyklu Zajíci a bažanti Myslivci porádali hon na zajíce a bažanty. Na konci chteli zjistit, kolik ceho ulovili. Byli však už tak unaveni, že nerozeznali zajíce od bažanta. Místního ucitele napadlo, že by mohli spocítat všechny kusy, které ulovili, a celkový pocet nohou. Z toho by se to prý melo spocítat. Princip rešení a použité promenné najdete na další stránce. Ošetrení nesmyslných hodnot - žádné zvíre nemuže mít víc než ctyri nohy. Ošetrení nesmyslných hodnot - každé zvíre musí mít aspon dve nohy. Zobraz: "Žádné zvíre nemá víc než ctyri nohy" Pro zacátek predpokládejme, že budou samí bažanti. Bude spocítáno, kolik by to bylo kusu. TEST:=NOHY DV(2) TEST:= TEST' 2 Pocet nohou musí být sudý. Zobraz: "Každé zvíre musí mít aspon dve nohy" Bylo spocteno víc kusu, než je jich doopravdy. Musí se vymenit dva bažanti za jednoho zajíce. ZAJ :=0 BAZ :=NOHY/2 KUSY := ZAJ + BAZ Zobraz: "Zvírata bez jedné nohy neberu" KUSY> KS + ZAJ:= ZAJ + BAl:= BAZ-2 KUSY := ZAJ + BAl Zobraz: ZAJ, BAZ Dva bažanti byli vymeneni za zajíce a znovu budou testovány kusy. 85

8 Algoritmizace Princip rešení a použité promenné k príkladu Zajíci a bažanti (vývojový diagram je na str. 85). Rešení: Jedná se o klasickou úlohu, kterou lze rešit pomocí soustavy dvou rovnic o dvou neznámých. V tomto príkladu však bude použito jiné rešení. Nejprve se ošetrí nesmyslne zadané hodnoty: Každé ulovené zvíre musí mít nejvýše ctyri nohy (zajíc ctyri, bažant jen dve). Je-i nohou více, pak asi myslivci špatne pocítali. Každé ulovené zvíre musí mít nejméne dve nohy (bažant dve, zajíc dokonce ctyri). Je-i nohou méne, pak asi myslivci špatne pocítali. Nohou musí být sudý pocet (viz algoritmus na zjištení sudého ci lichého císla). Pokud ne, tak se také bude jednat o chybné zadán í. Vlastní rešení: Nejprve budete predpokládat, že myslivci ulovili samé bažanty a žádného zajíce - všechny nohy, které jsou, se priradí bažantum, tj. pocet nohou se vydelí dvema a vyjde pocet bažantu. Porovnáte spocítaný pocet kusu (v tomto kroku je shodný s poctem bažantu, protože se predpokládá, že zajíci nebyli uloveni) s poctem skutecných kusu. Pokud spocítaný pocet kusu je vetší než pocet kusu skutecných, vymení se dva bažanti za jednoho zajíce (pocet nohou zustane stejný, pocet kusu se o jeden sníží). Testování kusu a výmeny dvou bažantu za jednoho zajíce se budou opakovat tak dlouho, dokud výsledkem nebude stejný pocet kusu, jako byl zadán. Úlohu budete rešit pomocí cyklu rízeného podmínkou - v cyklu pokracujete, dokud bude spocítaný pocet kusu vetší než pocet skutecných kusu. KS... skutecný pocet kusu zvere (zadaný zvencí) NOHY celkový pocet nohou (zadaný zvencí) KUSY spocítaný pocet kusu (v každém pruchodu cyklem se mení, na záver dosáhne hodnoty KS) ZAJ pocet zajícu (v každém pruchodu cyklem se mení, na záver bude roven jejich skutecnému poctu) BAZ pocet bažantu (v každém pruchodu cyklem se mení, na záver bude roven jejich skutecnému poctu) - a krátké. Vetšinu algoritmu zabírá ošetrení nežádoucích stavu, které by vznikly, kdybyste tl) Poznámka: Na výše uvedeném vývojovém diagramu opet vidíte, že vlastní rešeníje jednoduché do zpracování pustí/í nesmyslne zadané hodnoty. CíSELNÉ SOUSTAVY A PREVODY MEZ NM Prevod z desítkové soustavy do dvojkové - nové cifry se vypisují od nejnižších. Zadání: Prevedte císlo z desítkové soustavy do dvojkové, nové cifry se budou postupne vypisovat od nejnižšího Zadané císlo podelíte celocíselne dvema, výsledek si zapamatujete a zbytek po celocíselném delení si zapíšete' - bude to nejnižší rád nového císla ve dvojkové soustave. Výsledek celocíselného delení (císlo, které jste si zapamatovali) opet podelíte celocíselne dvema a zbytek po celocíselném delení si opet zapíšete - bude to další cifra (vyšší rád) nového císla ve dvojkové soustave. Postup opakujete tak dlouho, až výsledek celocíselného delení bude. To bude nejvyšší rád nového císla ve dvojkové soustave. Na následující stránce je uveden príklad - prevod desítkového císla 26 do dvojkové soustavy rádu.

9 Tvorba algoritmu s použitím cyklu..... Prevod desítkového císla 26 do dvojkové soustavy Celocíselný podíl císla o jedno výš O O Nejnižší cifra nového císla Zbytky po celocíselném delení císla vlevo, takže 26 = (00)2 Nejvyšší cifra nového císla Úlohu budete rešit pomocí cyklu rízeného podmínkou na zacátku cyklu, císlice nového císla ve dvojkové soustave budete vypisovat pri každém pruchodu cyklem. X císlo v desítkové soustave zadané zvencí Y zbytek po celocíselném delení dvema, jedna cifra nového císla ve dvojkové soustave POM... pomocná bunka, do které se ukládá výsledek celocíselného delení dvema ( Císlo v desítkové soustave Rídicí podmínka cyklu. Bude se delit tak dlouho, dokud bude co. POM:= X div(2) Y:= x- POM *2 Podelí se celocíselne dvema a zjistí se zbytek po celocíselném delení. Cifra ve dvojkové soustave Zobraz: X Poslední (nejvyšší) cifra Výsledek celocíselného delení bude prohlášen za X, aby bylo možno postup opakovat. ~~ Tip: Algoritmus mužete upravit také tak, že zmeníte rídicí podmínku cyklu na X > O. Potom cyklus probehne ješte jednou, podíl celocíselného delení bude nula a nejvyšší rád se zobrazí v promenné Y....!lJ [ : ~ l Poznámka: Výše uvedený algoritmus sice funguje, jenomže vypisování císlic v císle "odzadu dopredu" nepusobí príliš elegantne. Tento nedostatek odstranuje následující algoritmus.

10 r Algoritmizace Prevod z desítkové soustavy do dvojkové - nové cifry se vypisují od nejvyšších Prevedte císlo z desítkové soustavy do dvojkové, nakonec císlo ve dvojkové soustave zobrazte. Výpocet císlic nového císla ve dvojkové soustave probehne úplne stejne jako v predchozím prípade. Protože však získáváte nižší rády dríve než vyšší, musíte si je nekam ukládat. K tomuto úcelu použijete strukturovanou promennou pole. Toto pole bude mít nekolik jednoduchých prvku, napr.: A[] je první prvek pole, A[2] je druhý prvek pole, A[] bude -tý prvek pole, atd. Do každého prvku tohoto pole si mužete uložit nejaké císlo - v tomto prípade to bude císlice nového císla ve dvojkové soustave. Na záver všechny prvky pole vypíšete, zacnete posledním a skoncíte prvním. Použijete k tomu cyklus s pevným poctem opakování, protože už víte, kolik prvku pole má (to si zjistíte, když budete pri výpoctu císlic pocítat pruchody cyklem). X císlo v desítkové soustave zadané zvencí V zbytek po celocíselném delení dvema, jedna cifra nového císla ve dvojkové soustave POM H' pomocná bunka, do které se ukládá výsledek celocíselného delení dvema A[]... -tý prvek pole A, do kterého se budou ukládat spocítané... pocítadlo císlic (pri každém pruchodu cyklem se získá jedna císlice a do pocítadla se pridá jednicka), v druhém cyklu bude pocítadlo použito jako rídicí promenná cyklu císlice Poznámka: Promennou Y byste mohli vynechat a zbytky celocíselného delení nacítat zrovna do prvku pole A[] - bylo by to úspornejší. Tato verze byla ponechána kvuli lepší srozumitelnosti a návaznosti myšlenkových pochodu na predchozí algoritmus. V první cásti algoritmu (pri výpoctu jednotlivých císlic) je použita modifikace predchozího algoritmu doporucená v Tipu. + POM:= X div(2) Y:= x- POM *2 Zvednutí pocítadla císlic Delit se bude tak dlouho, dokud bude co. Uložení poctu císlic do horní meze rídicí promenné cyklu r---- Cyklus =N, Presun císlice do prvku pole cyklu 88 Cyklus pujde pozpátku, od N do jednicky. bude klesat, N zustává.

11 r Algoritmi ace RADY - ARTMETCKÉ, GEOMETRCKÉ, DALŠí Dalšími typickými úlohami, které se reší pomocí cyklu, jsou aritmetické a geometrické rady. Jsou to napríklad výpocty urcitého prvku aritmetické ci geometrické rady, poprípade soucty rad. Reší se pomocí tzv. rekurentních výpoctu, kde se na základe znalosti prvního prvku a pravidla pro výpocet prvku následujícího spocítá druhý prvek. V zobecnení platí, že z každého prvku je možné pomocí téhož pravidla získat prvek následující. Tyto úlohy - zejména s geometrickými radami - však skrývají jedno úskalí. Pokud rada není konvergentní, pak po urcitém poctu cyklu muže hodnota souctu rady nebo i prvku nabývat tak velkých hodnot, že presáhne povolený rozsah hodnot príslušného datového typu a dojde k tzv. "pretecení" (odborný výraz pro chybu programu zavinenou tím, že se do promenné, která je dimenzovaná na urcitý rozsah hodnot, snažíte zapsat vetší hodnotu - analogie se sklenicí vody, do které se snažíte nalít víc vody, než kolik je schopna pojmout). Aritmetická rada - výpocet hodnoty prvku rady, prvky se zobrazují prubežne Spocítejte hodnoty prvních N prvku aritmetické rady. Znáte hodnotu prvního prvku A a hodnotu rozdílu mezi dvema po sobe jdoucími prvky O. Každý prvek se hned po výpoctu zobrazí. První prvek mužete zobrazit hned po jeho zadání. Dále použijete cyklus s pevným poctem opakování, v jehož tele napred k predchozímu prvku prictete O, címž získáte prvek následující, a pak nový prvek zobrazíte. Protože budete prvky hned zobrazovat a netrváte na jejich uchovávání, mužete pro všechny použít jedinou promennou A, kterou po zobrazení v následujícím pruchodu cyklem prepíšete novou hodnotou. První prvek se nemusí pocítat, prímo se zobrazí. A... hodnota prvního prvku zadaná zvencí, pozdeji slouží pro všechny ostatní prvky rady O rozdíl mezi libovolným prvkem a prvkem následujícím N pocet prvku, které se mají spocítat (horní mez rídicí promenné cyklu)... rídicí promenná cyklu Dolní mez rídicí promenné je 2, protože první prvek byl už zobrazen. r Cyklus :=2,N A:= A+ O potrebné, prepsat. je možné je Další prvek je získán zstaré prictením predchozího A užd. nebude cyklem AV prímo každém se zobrazuje. pruchodu promenná ~ cyklu

12 Tvorba algoritmu s použitím cyklu ~... Aritmetická rada - výpocet hodnoty prvku rady, všechny prvky se zobrazí nakonec Spocítejte hodnoty prvních N prvku aritmetické rady. Znáte hodnotu prvního prvku A[] a hodnotu rozdílu mezi dvema po sobe jdoucími prvky D (prírustek). První prvek mužete zobrazit hned po jeho zadání. Dále použijete cyklus s pevným poctem opakování, v jehož tele napred k predchozímu prvku prictete D, címž získáte prvek následující. Pak nový prvek zobrazíte. Tentokrát však máte požadavek všechny prvky uchovat a zobrazit je až nakonec. Proto použijete pole - strukturovanou promennou, jehož jednotlivými prvky budou odpovídající prvky rady. A[]... hodnota prvního prvku zadaná zvencí (první prvek pole A) A[]... hodnota obecného -tého prvku (-tý prvek pole A) D rozdíl mezi libovolnými dvema po sobe následujícími prvky N pocet prvku, které mají být spocteny (horní mez rídicí promenné cyklu) rídicí promenná cyklu Dolní mez rídicí promenné je 2, protože první prvek je už znám a není nutné jej pocítat. r Pro výpocet dalšího prvku se použije nový prvek pole; predchozí tedy zustane uchován. A[] := A[-] + D Další cyklus, ve kterém se prvky jeden po druhém zobrazí, tentokrát "od jednicky". cyklu2 9

13 Algoritmizace Aritmetická rada - soucet Vytvorte algoritmus pro zjištení souctu aritmetické rady, zadáte-i hodnotu prvního prvku rady A[], hodnotu rozdílu dvou po sobe jdoucích prvku D a pocet prvku, které máte secíst. Princip rešení bude velice podobný jako u predchozích dvou príkladu. Rozdíl bude pouze v tom, že nebudete muset vypisovat hodnoty, které vznikají pri jednotlivých pruchodech cyklem, nýbrž vás bude zajímat až konecná hodnota souctu. Pro výpocet souctu lze použít obe varianty, jak pomocí jediné promenné, která se bude postupne prepisovat (predminulý algoritmus - Aritmetická rada - výpocet hodnoty prvku rady, prvky se zobrazují prubežne, str. 90), tak i pomocí pole, do kterého si budete jednotlivé prvky aritmetické rady ukládat (predchozí algoritmus Aritmetická rada - výpocet hodnoty prvku rady, všechny prvky se zobrazí nakonec, str. 9). Ve vývojovém diagramu Aritmetická rada - soucet je použita varianta s polem. A[]... hodnota prvního prvku zadaná zvencí (první prvek pole A) A[)... hodnota obecného -tého prvku (-tý prvek pole A) D rozdíl mezi dvema libovolnými po sobe jdoucími prvky N pocet prvku, jejichž soucet se má spocítat (horní mez rídicí promenné cyklu) rídicí promenná cyklu SUMA... soucet aritmetické rady, v jednotlivých pruchodech cyklu se do promenné ukládají mezisoucty Promenná SUMA se tentokrát nebude nulovat, ale priradí se jí prímo hodnota prvního prvku rady. SUMA:= A[] Dolní mez rídicí promenné je 2, protože první prvek byl už vložen do promenné SUMA. r Cyklus := 2,N Pro výpocet da.lšího prvku bude použit nový prvek pole; predchozí tedy zustane uchován. K tomu, co už v promenné SUMA je, se pricte nove spocítaný prvek. r r r L _ cyklu 92

14 Tvorba algoritmu s použitím cyklu.... Geometrická rada - výpocet hodnoty prvku rady, prvky se zobrazují prubežne Spocítejte hodnoty prvních N prvku geometrické rady. Znáte hodnotu prvního prvku A a hodnotu podílu mezi dvema po sobe jdoucími prvky Q. Hodnoty prvku se budou zobrazovat prubežne. Protože se jedná o geometrickou radu, je dobré si predem zjistit velikost koeficientu Q, nebot: je-i Q<, rada je konvergentní; je-i Q>, rada je divergentní. V matematice se dopady konvergence ci divergence rady užívají hlavne až pri souctu geometrických rad. Pri algoritmizaci si však musíte uvedomit, že bude-i napríklad: A[] = a Q = 0, paka[2] = 0,A[3] = a dálea[s] = , což je daleko za hranicí možností císel datového typu nteger (nejvyšší císlo je ). Existují sice další datové typy, které umožnují uchovávat mnohem vetší císla, ale pri bezmyšlenkovitém použití velkého poctu kroku cyklu nebudou stacit ani ty a dojde k pretecení pameti! Po nezbytném ošetrení nežádoucích stavu, které by mohly nastat, je další algoritmus velice podobný algoritmu Aritmetická rada - výpocet prvku rady, prvky se zobrazují prubežne (str. 90), jen v tele cyklu získáte nový prvek vynásobením predchozího prvku koeficientem Q. A... hodnota prvního prvku zadaná zvencí (pozdeji slouží pro ostatní prvky) Q 0'0 podíl dvou po sobe jdoucích prvku N..o pocet prvku, které se mají spocítat (horní mez rídicí promenné cyklu),,0 rídicí promenná cyklu abs(q) >i + Ošetrení, zda je rada konvergentní, ci divergentní Dolní mez rídicí promenné je 2, protože první prvek byl už zobrazen. Další prvek bude získán z predchozího vynásobením Q. Staré A už nebude zapotrebí, proto muže být prepsáno. r Cyklus := 2,N A:= A* Q Zobraz: "Pozor, rada je divergentní. Prvky mohou po nekolika krocích nabývat vysokých hodnot a muže dojít k pretecení pameti." V každém pruchodu cyklem se promenná A prímo zobrazuje. cyklu 93

15 Algoritmizace Geometrická rada - výpocet hodnoty prvku rady, všechny prvky se zobrazí nakonec Spocítejte hodnoty prvních N prvku geometrické rady. Znáte hodnotu prvního prvku A[] a hodnotu podílu mezi dvema po sobe jdoucími prvky Q. Hodnoty všech prvku zobrazte až nakonec. Napred ošetríte (stejným zpusobem jako v predchozím algoritmu Geometrická rada - výpocet hodnoty prvku rady, prvky se zobrazují prubežne, str. 93 )možnost pretecení pameti. Další algoritmus bude velmi podobný algoritmu Aritmetická rada - výpocet hodnoty prvku rady, všechny prvky se zobrazí nakonec (str. 9), jenom v tele cyklu získáte nový prvek vynásobením predchozího prvku koeficientem Q. A[] hodnota prvního prvku zadaná zvencí (první prvek pole A) A[] hodnota obecného -tého prvku (-tý prvek pole A) Q podíl dvou po sobe následujících prvku N pocet prvku, jejichž hodnoty mají být spocteny (horní mez rídicí promenné cyklu) 0.0 rídicí promenná cyklu Ošetrení, zda je rada konvergentní, ci divergentní abs(q) > O + Dolní mez rídicí promenné je 2, protože první prvek je už znám a nemusí být pocítán. Pro výpocet dalšího prvku bude použit nový prvek pole; predchozí prvek tedy zustane uchován. ~ A[] := A[-] * Q Zobraz: "Pozor, jedná se o divergentní radu. Prvky po nekolika krocích mohou nabývat vysokých hodnot a muže dojít k pretecní pameti." cyklu Další cyklus, ve kterém budou prvky jeden po druhém zobrazeny, tentokrát "od jednicky". r-- L _ cyklu

16 Tvorba algoritmu s použitím cyklu lll. Geometrická rada - Suma Spocítejte soucet prvních N prvku geometrické rady. Znáte hodnotu prvního prvku A[] a hodnotu podílu mezi dvema po sobe jdoucími prvky Q. Soucet zobrazte. Nejprve ošetríte stejným zpusobem jako v predchozím algoritmu (Geometrická rada - výpocet hodnoty prvku rady, všechny prvky se zobrazí nakonec, str. 94) možnost pretecení pameti. Další algoritmus bude velmi podobný algoritmu Aritmetická rada - soucet (str. 92), jenom v tele cyklu získáte nový prvek vynásobením predchozího prvku koeficientem Q. A[] hodnota prvního prvku zadaná zvencí (první prvek pole A) A[] hodnota obecného -tého prvku (-tý prvek pole A) Q... podíl dvou po sobe následujících prvku SUMA... soucet geometrické rady, v jednotlivých pruchodech cyklu se do promenné ukládají mezisoucty N pocet prvku, které mají být spocteny (horní mez rídicí promenné cyklu) rídicí promenná cyklu Ošetrení divergentní rady Promenná SUMA se tentokrát nebude nulovat, ale priradí se jí prímo hodnota prvního prvku rady. SUMA:= A[] Dolní mez rídicí promenné je 2, protože první prvek už byl vložen do promenné SUMA. Pro výpocet dalšího prvku bude použit nový prvek pole; predchozí prvek tedy zustane uchován. K tomu, co už v promenné SUMA je, bude pricten nove spocítaný prvek. r , L _ cyklu Zobraz: "Rada je divergentní, muže dojít k pretecení pameti."

17 t ~ A 9 O rit m iza c e Složité úrokování Praktickým príkladem na použití rady je složité úrokování. Vytvorte algoritmus pro složité úrokování, pomocí kterého zjistíte výši usporené cástky, když zadáte rocní úrokovou míru, výši pravidelné mesícní úložky a pocet let, po která budete sporit. Mohli byste sice také dosadit do vzorce, ze kterého s použitím zadaných údaju spocítáte budoucí hodnotu, vy však vytvoríte rekurentní algoritmus. Rocní úroková míra - pocet procent, o který by se zúrocila cástka penez, jež by ležela na úctu po celý rok. Úložky však nebudou vkládány x rocne, ale mesícne (vždycky na zacátku mesíce), takže: lednová úložka bude ležet na úctu 2 mesícu; únorová úložka bude ležet na úctu mesícu; prosincová úložka bude ležet na úctu mesíc. Proto pak následne: lednové úložce bude príslušet celý rocní úrok, tj. 2/2 rocního úroku; únorové úložce bude príslušet /2 rocního úroku; prosincové úložce bude príslušet jen /2 rocního úroku. Behem roku se úrocí pouze vložené peníze, neúrocí se úroky z mesícních úroku. Nemužete proto pripocítat každý mesíc úrok k rocní usporené cástce a príští mesíc jej úrocit spolu s ostatními penezi. Výše uvedenou cást algoritmu budete rešit cyklem s pevným poctem opakování (a to 2) - pri každém pruchodu prictete k rocní sume novou mesícní úložku a spocítáte /2 rocního úroku z této cástky. Úroky se "pripisují" x rocne, takže: znáte cástku, která ležela na úctu déle než rok; znáte cástku, kterou jste našetrili za práve uplynulý rok; spocítáte rocní úrok ze všech penez, které ležely na úctu déle než rok; znáte už úrok z mesícních úložek, protože jste jej prubežne pocítali. Vše sectete a získáte celkovou sumu za uplynulé období vcetne pripsaných úroku, další rok tedy budete mít úroky i z techto úroku. Nesmíte zapomenout vynulovat promennou, do které nacítáte rocní vklady, abyste ji meli pripravenou na další rok. Ze stejného duvodu musíte vynulovat rocní úrok. První cást algoritmu (cyklus zabývající se mesícními úložkami a jejich úrokem) a další cást algoritmu, která se zabývá aktualizací celkové cástky a pripsáním úroku, "obalíte" dalším (vnejším) cyklem s pevným poctem opakování (pocet let). Protože se soucasné rocní úrokové míry pohybují zpravidla v nekolika málo procentech (nebude hypoteticky uvažováno v hyperinflacních rozmerech, kdy by neprimerene rostly i úrokové míry vkladu), nebudete si muset lámat hlavu s tím, že by nasporená cástka rostla nad všechny meze (a došlo k pretecení pameti). ULOZ... pravidelná mesícní úložka PA rocní úroková míra (procentní cástku prevedete na desetinné císlo, napr. 2% = 0,02) N SUMAR pocet roku, po které bude sporeno promenná slouží k ukládání mezivýsledku rocní usporené cástky pri každém pruchodu vnitrním cyklem SUMAC celková suma - do této promenné se po uplynutí roku pricítají rocní usporené cástky a úroky za uplynulá období UROKR '" rocní úrok - promenná slouží k výpoctu úroku z pravidelných mesícních úložek behem jednoho roku UROKC... celkový úrok - promenná sloužící k výpoctu úroku z cástky, která leží na úctu déle než rok vývojový diagram algoritmu je na následující stránce

18 Tvorba algoritmu s použitím cyklu..... vývojový diagram algoritmu: Složité úrokování / SUMAR:= O SUMAC :=0 UROKR:= O Všechny promenné, ke kterým se bude neco pricítat, musí být vynulovány. r ~ Vnejší cyklus - pocet let Cyklus2 Vnitrní cyklus - mesícní r J:=, 2 úložky behem roku SUMAR := SUMAR + ULOZ Pripoctení další úložky UROKR:= UROKR + SUMAR * PAl2 Pripoctení úroku cyklu2 UROKC := SUMAC * PA Úrok z cástky, která je na úctu déle než rok SUMAC := SUMAC + SUMAR + UROKC + UROKR Nová celková cástka, do které je pripocítána nasporená cástka za uplynulý rok a jsou pripsány všechny úroky ~ cyklu Vynulování rocní sumy a rocního úroku, pokracuje se dál

19 Algoritmizace Stavební sporení Vypracujte algoritmus pro výpocet cástky, kterou nasporíte za celý jeden cyklus stavebního sporení. Podmínky stavebního sporení a vysvetlení pojmu, které budete dále potrebovat: Klient (stradatel) vkládá pravidelne jednou mesícne dohodnutou cástku (porád stejnou). Sporí takto pravidelne po celý cyklus, který trvá nekolik let od ledna do prosince (dríve to bylo 5 let, nyní je to 6 let, za cas to bude zase jiná doba, proto bude ponechána doba obecná - bude zadávána zvencí). Délka cyklu musí být dodržena. Peníze, které klient ukládá, jsou úroceny obvyklým zpusobem (viz predchozí príklad Složité úrokování na str ). Bude predpokládáno, že úroková míra behem celého cyklu zustane stejná. Až potud by se jednalo o obvyklou úlohu složitého úrokování, ovšem je dále ješte vylepšena: Nasporí-i klient behem roku urcitou maximální cástku (dríve to bylo Kc, nyní to je Kc, za cas to bude treba jinak, proto ji necháte obecnou a bude zadávána zvencí), potom mu prísluší za tento rok maximální prémie (dríve to bylo Kc, nyní to je Kc, ponecháte ji proto zase obecnou a bude opet zadávána zvencí): nasporí-i za rok méne než maximální cástku, pak se maximální prémie úmerne zkrátí; nasporí-i více, maximální prémie se už nezvýší. Do nasporené cástky se pocítají i všechny úroky a prémie, které byly v daném roce pripsány. Nasporená cástka se vyhodnotí každý rok koncem prosince, prémie se však pripisuje až v kvetnu. Jakmile se prémie pripíše ke vkladu, normálne se úrocí jako všechno ostatní. (Poznámka: ULOZ... pravidelná PR... rocní procentní Úloha je mírne zjednodušena.) mesícní úložka úroková sazba N... pocet let, po která stradatel sporí MPR... maximální prémie, která muže být stradateli pripsána, pokud nasporí za rok maximální cástku, z níž se odvozuje prémie: nasporí-i za rok cástku vyšší, pak už prémie dál neroste nasporí-i za rok cástku nižší, pak se prémie zkrátí v pomeru nasporené cástky ku maximální cástce, ze které se odvozuje prémie PREM... prémie, která bude stradateli pripsána. Pocítá se jako pomerná cást z maximální prémie: nasporí-i za rok cástku vyšší nebo rovnou maximální rocní usporené cástce (MCR), pak dostane maximální prémii (MPR) nasporí-i za rok cástku nižší, pak se prémie zkrátí v pomeru nasporené cástky ku maximální cástce, ze které se odvozuje prémie MCR... maximální rocní usporená cástka, ke které prísluší maximální prémie (pokud by stradatel nasporil víc, prémie se už dál nezvyšuje) Do rocní usporené cástky se zapocítávají i pripsané úroky a prémie za minulý rok. MPL... pocet let, po která bude stradatel sporit SUMR... suma úspor v prubehu jednoho roku (do této cástky se krome vkladu zapocítávají i úroky a prémie za minulý rok) SUMC... celková suma za uplynulé období UROKC rocní úrok z cástky, která leží na úctu déle než rok UROKR úrok z úložek, které pricházely na úcet behem posledního roku Nebýt prémie, která se pripisuje vždy jednou za rok v kvetnu, jednalo by se o obycejnou úlohu o složitém úrokování (viz predchozí príklad Složité úrokování na str )

20 Tvorba algoritmu s použitím cyklu Opet v tomto algoritmu pobeží soubežne dva cykly složitého úrokování - jeden s úložkou x mesícne a jeden s úložkou x rocne. Vezmete-i v úvahu jen interval jednoho roku, pak se v nem projeví pouze mesícní úložky - vetšinou pravidelné, pouze v 5. mesíci zvednuté o prémii. Tím mužete vytvorit cyklus s pevným poctem opakování (a to 2). Cyklus, který je zmínen v predchozím bodu, bude soucástí dalšího cyklu - rovnež s pevný poctem opakování (pocet let). V tom se zjistí, kolik klient nasporil, vypocítá se prémie, na kterou bude mít príští rok v kvetnu nárok a pripocítají se úroky. SUMC:= SUMR:= PREM:= O O O Všechny promenné, ke kterým se bude neco pricítat, musí být vynulovány. r Cyklus J:=, MPL +---i Vnejší cyklus - pocet let r Cyklus2 :=,2 Vnitrní cyklus - mesícní úložky behem roku + SUMR := SUMR + PREM Je-i kveten, pripocítá se prémie. SUMR := SUMR + ULOZ UROKR:= UROKR + SUMR' PN2 Pripocítá se další úložka. PripOCítá se úrok. cyklu2 Výpocet prémie - usporí-i klient více, dostane nakonec stejne jen maximální prémii. Úrok z cástky, která je na úctu déle než rok Vynuluje rocní sumu a rocní úrok. SUMR + UROKR > MCR PREM := MPR (SUMR + UROKR) / MCR UROKC := SUMC PA SUMC = SUMC + SUMR + UROKC + UROKR SUMR :=0 UROKR:= O + Pomerná cástka z maximální prémie Nová celková cástka, do které je pripocítána nasporená cástka za uplynulý rok a jsou pripsány všechny úroky. l 99

21 Algoritmizace Faktoriál Po predchozí pomerne složité úloze je toto jedna z jednodušších - rekurentní algoritmus pro výpocet faktoriálu. Vytvorte algoritmus pro výpocet faktoriálu z celého nezáporného císla. Z matematiky víte, že: N! = N*(N-)*(N-2)*... *3*2* a také 0!=, což je úloha jako stvorená pro rekurentní algoritmus. Úlohu budete rešit pomocí cyklu s pevným poctem opakování. V níže uvedeném algoritmu bude rídicí promenná cyklu rust od hodnoty 2 po N, takže budete pocítat *2*... *N. N... císlo, jehož faktoriál se má pocítat FAKT... faktoriál císla N, tedy N První hodnota je prirazena faktoriálu ješte pred cyklem. N =0 + To, co už je, bude vynásobeno dalším císlem v poradí. r---- :---.. L _ cyklu Upozornení: Budete-í podle algoritmu vytváret program, nezadávejte pri jeho ladení velká císla a zvolte si primerený datový typ. Již 8 = 40320, což je víc, než se vejde do promenné typu nteger - muže snadno dojít k pretecení pameti!

22 Tvorba algoritmu s použitím cyklu <lll Algoritmus pro výpocet Ludolfova císla t Vytvorte algoritmus pro výpocet n, a to pomocí rady. Vzorec pro výpocet: t - = Jedná se o konvergentní radu, která konverguje práve k t4. Její prírustky budou s každým dalším clenem cím dál menší, ovšem cím více clenu rady použijete, tím bude výsledek presnejší. Zvolíte si sami nejaké hodne malé císlo E (epsilon), které bude zadáno zvencí. Budete pricítat nové cleny rady tak dlouho, až bude dosud poslední clen rady menší než vámi zvolené E. Poté výpocet ukoncíte a výsledek prohlásíte za dostatecne presný. Pozor, není to skutecný rozdíl správné hodnoty od hodnoty, kterou jste spocítali! Použijete cyklus rízený podmínkou na zacátku cyklu. Na záver ješte výsledek vynásobíte ctyrmi, protože ve vzorci se pocítá t4. EPS... požadovaná "presnost" PCTVRT... promenná, do které se prubežne ukládají mezivýsledky výpoctu t4, nakonec zde bude skutecne tato hodnota... pomocná promenná pro výpocet jmenovatele nového clenu rady KROK... promenná, pomocí které se nastaví znaménko nového clenu rady - bylo-i minule kladné, ted bude záporné a naopak. P... císlo n, které pocítáte ( := PCTVRT:= KROK := Nastavení pocátecních hodnot Každý nový clen má ve jmenovateli císlo o 2 vetší. Rídicí podmínka cyklu - testování posledního prírustku rady Když se minule pricítalo, ted se bude -- odecítat (a naopak). := +2 KROK := - KROK PCTVRT:= PCTVRT + KROK */ P := 4 * PCTVRT 0

23 Tvorba algoritmu s použitím cyklu....., OPERACE S VEKTORY A MATCEM Další typickou oblastí úloh, které jsou velice vhodné pro algoritmizaci s využitím cyklu, jsou práve operace s vektory a maticemi. Soucet vektoru Vypracujte algoritmus pro soucet dvou vektoru A, B. Jejich rozmery N, M a hodnoty všech položek A[], B[] budou zadávány zvencí. Výsledný vektor bude C. Nejprve se nacte rozmer prvního vektoru. Ponevadž není možné míchat strídavé nacítání P90žek z jednoho a z druhého vektoru, musí být nejprve nacteny všechny položky prvního vektoru. Bude použit cyklus s pevným poctem opakování. r----- Cyklus =,N Pak se nacte rozmer druhého vektoru. Protože je možné secítat pouze vektory, které mají stejný rozmer, otestuje se, zda je tato podmínka splnena. cyklu Podmínka je splnena. Pomocí dalšího cyklu s pevným poctem opakování se nacítají položky druhého vektoru. Každá položka se hned po nactení secte s odpovídající položkou prvního vektoru. Cyklus2 =,M C[]:= A[] +8[] Spocítané položky nového vektoru se hned zobrazují. ~ cyklu

24 Algoritmizace Skalární soucin vektoru Vypracujte algoritmus pro skalární soucn dvou vektoru A, B. Jejich rozmery N, M a hodnoty všech položek A[], B[] budou zadávány zvencí. Výsledný vektor bude C. Nejprve se nacte rozmer prvního vektoru. Ponevadž není možné míchat strídavé nacítání položek z jednoho a z druhého vektoru, musí být nejprve nacteny všechny položky prvního vektoru. Bude použit cyklus s pevným poctem opakování. Pak se nacte rozmer druhého vektoru. Protože je možné násobit pouze vektory, které mají stejný rozmer, otestuje se, zda je tato podmínka splnena. r----- _ Cyklus =,N Podmínka je splnena. Pomocí dalšího cyklu s pevným poctem opakování se nacítají položky druhého vektoru. Každá položka se hned po nactení vynásobí s odpovídající položkou prvního vektoru. Zobraz: "Vektory nejsou stejného rozmeru" C[]:= A[] *B[] cyklu

25 Tvorba algoritmu s použitím cyklu ~.. J Matice - nactení prvku Nacítání prvku matice je základní úlohou, bez níž se neobejdete v žádném algoritmu, který souvisí práve s maticemi. Základní amj an a2n ajn a2j a... aj... ai2 a22 am2 a2... amn údaje: Je dána matice A o rozmerech m, n: aj a Postupujete-i zleva doprava v rámci jednoho rádku, mení se druhý, tedy j-tý index od do n, index j udává císlo sloupce. Postupujete-i odshora dolu v rámci jednoho sloupce, mení se první, tedy i-tý index od do m, index i udává císlo rádku. Chcete-i nacíst první rádek, mužete použít cyklus, ve kterém se bude menit druhý, j-tý index od po n. Každý další rádek mužete nacíst úplne stejne, takže pro ctení všech rádku mužete použít rovnež cyklus. Tentokrát bude rídicí promennou i - první index. Jeho meze budou od po n. Protože napred prectete jeden celý rádek a teprve pak pujdete na další, ctení každého rádku budete provádet ve vnitrním cyklu. Ten bude vnoren do vnejšího cyklu, který bude rídit prechod z jednoho rádku na druhý. r r--- Cyklus =,M Vnejší cyklus - zarídí prechod z jednoho rádku na druhý, aby se ve vnitrním cyklu mohly nacíst všechny prvky téhož rádku. Až se nactou, pak se zmení rádkový index a vše se opakuje. Vnitrní cyklus - zarídí nactení všech prvku téhož rádku. J je druhým indexem prvku, který udává císlo sloupce matice. -- cyklu2 cyklu ~

26 2 Tvorba algoritmu s použitím cyklu ~.. TRíDCí ALGORTMY Povestnou "trešnickou na dortu algoritmizace" jsou trídicí algoritmy. Jejich úkolem je vždy seradit podle velikosti radu císelných nebo alfanumerických údaju. Bez trídicích programu se neobejde žádná úloha hromadného zpracování dat, nebot vyhledávání informací v serazených datech je podstatne jednodušší a rychlejší než v datech neserazených (kde pripadá v úvahu pouze sekvencní prohledávání). Nactená data musí být vždy pred vlastním trídením uložena, a to bud v operacní pameti, nebo na disku, protože se ke každé položce budete nekolikrát vracet. ~ aupozornení: kterou vždy Nemužete v dalším kroku použít cyklu systém prepíšete jedinénovým promenné, údajem! do které budete zvencí zadávat údaj A) Z pohledu zadání vstupních dat existují dve varianty: setrídení predem známého poctu císel ci znaku - pocet je znám predtím, než se nacte první císlo ci znak; setrídení neznámého poctu císel - nacítají se císla ci znaky a na jejich konci je "zarážka" (muže to být bud speciální znak, který se normálne v rade trídených znaku ci císel nemuže vyskytnout, nebo napríklad znacka konce souboru). Tyto varianty mají vliv pouze na "prípravnou fázi" trídicího algoritmu - na zpusob nactení a uložení vstupních dat (zda se použije cyklus s pevným poctem opakování, ci cyklus rízený podmínkou). Na vlastní prubeh trídení však vliv nemají. B) Z pohledu vlastního zpusobu serazování dat existuje hodne ruzných metod, které se liší: složitostí algoritmu; nároky na pamet (poctem pomocných promenných); rychlostí (poctem porovnání). V ucebnici bude objasneno nekolik nejznámejších trídicích algoritmu. Poznámka: Ve všech trídicích algoritmech se na zacátku vyskytuje nactení údaju, které je stejné pro všechny uvádené algoritmy. Tato cást jíž nebude rozvádena, nebot se už v této knize vyskytuje nekolikrát. Je oznacena znackou podprogramu Nacti vektor A[N] a rozumí se tím nactení n císel ci znaku do strukturované promenné pole A o n položkách. Select Sort (trídení prímým výberem) Název metody Select Sort pochází z toho, že postupne vybíráte jeden prvek po druhém a srovnáváte jej s prvním prvkem nesetrídené posloupnosti. Je-i prvek, který je "na rade", menší než první, vymeníte je. První setkání s tímto algoritmem bylo už v kapitole Vetvení - podkapitola Porovnávání císel a jejich razení podle velikosti, príklad Serazení trí císel s použitím pomocné bunky, resp. Serazení ctyr císel s použitím pomocné bunky. Nyní je algoritmus zobecnen na obecný pocet císel ci znaku a je rešen pomocí cyklu. Poznámka: V této úloze bude použito trídení vzestupné, tj. od nejmenšího prvku k nejvetšímu. Pokud byste chteli trídit naopak, postup by byl analogický, pouze byste namísto minima hledali maximum. Nactete všechny n položky do pole A - viz podprogram Nacti vektor A[N]. Položky setrídíte takto: Nejprve ze všech n položek najdete minimum a uložíte je do položky A[]. K vyhledání minima použijete algoritmus z této kapitoly Minimum z rady císel, metoda prímého výberu - rešení pomocí vektoru (str. 07).

27 j Algoritmiza e Pro jistotu si malicko osvežíme postup: první prvek porovnáte s druhým - je-i druhý menší, prehodíte je; pak první porovnáte s tretím, je-i tretí menší než první, prehodíte je; obdobným zpusobem pokracujete dál; nakonec porovnáte první s posledním, je-i poslední menší, prehodíte je. V položce A[] máte nyní minimum ze všech prvku, proto si jí nebudete nadále všímat a ze zbývajících n- položek (od druhé po n-tou) vyhledáte opet minimum a uložíte je do položky A[2]. Položky A[2] si nebudete nadále všímat a ze zbývajících n-2 položek (od tretí po n-tou) vyhledáte opet minimum a uložíte je do položky A[3]. Tento postup se opakuje tak dlouho, dokud bude co porovnávat. vývojový diagram se bude skládat ze dvou vnorených cyklu: Vnitrní cyklus bude obsahovat zobecnený algoritmus Minimum z rady císel, metoda prímého výberu - rešení pomocí vektoru (str. 07). U rídicí promenné cyklu už není definována dolní mez "natvrdo", ale je zadána obecne. Vnejší cyklus zarizuje nastavení dolní meze rídicí promenné vnitrního cyklu. Je-i nalezeno minimum, vyradí se a dál se bude hledat minimum ze zbylých císel. (±) Výhody metody Select Sort: Tato metoda je velmi jednoduchá, snadno zapamatovatelná a také naprogramovatelná. Je to první zpusob, který cloveka vetšinou intuitivne napadne, i když nemá hlubší znalosti o trídicích algoritmech. e Nevýhody metody Select Sort: Dochází k velkému poctu porovnávání (každý s každým). Pocet porovnávání se nesníží ani v prípade, že je posloupnost hned na zacátku cástecne nebo i úplne setrídená. S vysokým poctem porovnávání se úmerne zvyšuje cas potrebný k setrídení. r r l.. _ Nacti vektor A[N] A[J] <A[] cyklu2 + Nastavení dolní meze rídicí promenné vnitrního cyklu. Vždy, když se ve vnitrním cyklu najde minimum, zkrátí se nesetrídená posloupnost o Jednicku. Vnitrní cyklus obstará vyhledání minima z dosud nesetrídených prvku. Postupne se srovnává každý prvek nesetrídené posloupnosti s prvním prvkem nesetrídené posloupnosti. POM :=A[] A[] :=A[J] A[J] :=POM L _ cyklu Zobraz vektor A[N] 22

28 Tvorba algoritmu s použitím cyklu'"... Bubble Sort (trídení probubláváním) - zjednodušený Název metody Bubble Sort (probublávání) pochází z analogie s kapalinou, ve které jsou ruzne velké bublinky vzduchu. Nejdríve "vybublá" nahoru ta nejvetší, pak ty menší. Algoritmus pracuje na principu postupného porovnávání dvou sousedních prvku. Je-i prvek vetší než následující, prvky se prohodí. První setkání s tímto algoritmem bylo už v kapitole Vetvení - podkapitola Porovnávání a razení císel, maximum a minimum, príklad Serazení trí císel podle velikosti s respektováním výsledku predchozího kroku (str. 37). Nyní už umíte používat cykly, proto mužete rešit príklad obecne pro n prvku. Poznámka: V této úloze budete opet pracovat s trídením vzestupným, tj. od nejmenšího prvku k nejvetšímu. Pokud byste chteli trídit naopak, postup by byl analogický, pouze byste namísto minima hledali maximum. ~ Nactete všechny n položky do pole A - viz podprogram Nacti vektor A[N]. Položky setrídíte takto: nejprve ze všech n položek najdete maximum a uložíte je do položky A[N]. K vyhledání maxima použijete algoritmus z této kapitoly Maximum z rady císel, metoda probublávání - rešení pomocí vektoru (str. 08). Pro jistotu si opet osvežíme postup: první prvek porovnáte s druhým - je-i první vetší, prehodíte je; pak druhý porovnáte s tretím, je-i druhý vetší než tretí, prehodíte je; obdobným zpusobem pokracujete dál; nakonec porovnáte predposlední s posledním, je-i predposlední vetší, prehodíte je. Položky A[N] si nebudete nadále všímat a ze zbývajících n- položek (od první po n-) vyhledáte opet maximum a uložíte je do položky A[N-]. Položky A[N-] si nebudete nadále všímat a ze zbývajících n-2 položek (od první po n-2) vyhledáte opet maximum a uložíte je do položky A[N-2]. Tento postup se opakuje tak dlouho, dokud bude co porovnávat. vývojový diagram se bude skládat ze dvou vnorených cyklu: Vnitrní cyklus bude obsahovat zobecnený algoritmus Maximum z rady císel, metoda probublávání, - rešení pomocí vektoru (str. 08). U rídicí promenné cyklu však už nebude definována horní mez "natvrdo", ale je zadána obecne. Vnejší cyklus zarizuje nastavení horní meze rídicí promenné vnitrního cyklu. Je-i nalezeno maximum, zaradí se na konec a dál se bude hledat nové maximum ze zbylých císel. Poznámka: Výše uvedená metoda se v této podobe príliš nepoužívá, protože neskýtá žádnou zvláštní výhodu oproti predchozí. Její význam pro vás je zejména v pochopení algoritmu, který mužeme dále zefektivnit. - Výhody metody Bubble Sort - zjednodušené: Tato metoda je rovnež velmi jednoduchá, snadno zapamatovatelná i naprogramovatelná. Je základem pro klasickou metodu Bubble Sort a pro metodu Sh?ke Sort (trídení pretrásáním). e Nevýhody metody Bubble Sort - zjednodušené: V této podobe opet dochází k velkému poctu porovnávání (každý s každým). Pocet porovnávání se nesníží ani v prípade, že je posloupnost hned na zacátku cástecne nebo i úplne setrídená. S vysokým poctem porovnávání se úmerne zvyšuje cas potrebný k setrídení. 23

29 Algoritmizace vývojový diagram algoritmu: Bubble Sort (trídení probubláváním) - zjednodušený Nacti vektor A[N] Nastavení horní meze rídicí promenné vnitrního cyklu. Vždy, když se ve vnitrním cyklu našlo maximum, zkrátí se nesetrídená posloupnost o jednicku. Pozor! Rídicí promenná cyklu je klesající, pri každém pruchodu cyklem bude o jednicku menší. r Vnitrní cyklus obstará vyhledání maxima z dosud nesetrídených prvku. r Postupne se srovnává každý prvek nesetrídené posloupnosti s prvkem o jedno vyšším, který také ješte patrí do nesetrídené posloupnosti. POM :=A[J] A[J] := A[J+] A[J+] :=POM Výmena prvku L _ cyklu Zobraz vektor A[N] Bubble Sort (trídení probubláváním) - klasický Základem je predchozí algoritmus, bude však vylepšen o test, který zjistí, zda už je rada prvku setrídena, ci ne. Pokud ano, nepokracuje se v procházení rady prvku a trídení se ukoncí dríve. Vylepšení umožní významne snížit pocet vzájemných porovnávání (a tím zkrátit dobu trídení) v prípade, že rada prvku je už na zacátku cástecne (nebo dokonce úplne) setrídena. Jako základ použijete predchozí algoritmus, tedy Bubble Sort (trídení probubláváním) - zjednodušený (uvedený na str. 23). Použijete novou promennou ZM, která bude sloužit jako indikátor, zda došlo behem celého jednoho porovnávacího pruchodu rady císel aspon k jednomu prohození prvku:

30 ~ Tvorba algoritmu s použitím cyklu... pred vstupem do vnitrního cyklu nastavíte promennou ZM na hodnotu O; do vnitrního cyklu, v míste, kde dochází k prohození hodnot prvku v prípade, že je prvek vetší než následující, pridáte indikátor zmeny - promennou ZM nastavíte na hodnotu ; až dokoncíte celý pruchod radou císel, po opuštení vnitrního cyklu, otestujete, zda jste museli na poradí neco menit (zda ZM = ), nebo zda už byla rada setrídená (zda ZM = O). Pokud jste museli neco na poradí menit, pak pokracujete v rámci vnejšího cyklu. Když ne, je setrídeno. <±> Výhody metody Bubble - klasické oproti predchozí: Sort Máte-i na zacátku nebo dokonce úplne posloupnost, algoritmus a muže skoncit dríve. cástecne setrídenou to zjistí Nacti vektor A[N] Velice rychle "vybublá" nahoru velký prvek. Je-i na zacátku rady (která je cástecne setrídená) velký prvek, dostane se na její konec behem jednoho pruchodu radou císel. e Nevýhody metody Bubble Sort - klasické: Je-i naopak na konci cástecne setrídené rady císel malé císlo, velice pomalu se "potápí" na zacátek rady. Pri každém pruchodu radou prvku klesne jen o jedno místo, a proto je zapotrebí plný pocet pruchodu (každého s každým) a nic se neušetrí. Je-i posloupnost úplne nesetrídená, dochází k velkému poctu porovnávání (každý s každým). r r Cyklus := N, 2 ZM:=O Cyklus2 J:=, - + Vynuluje se indikátor zmeny poradí. Menilo se poradí, indikátor zmeny se nastaví na jednicku. POM :=A[J] A[J] :=A[J+] A[J+] :=POM ZM := Pokud se nic nemuselo menit, rada císel už byla setrídená. L _ Menilo se poradí prvku, proto je nutné radu projít znovu. Zobraz vektor A[N]

31 r';~~~."""~ AlgoritmizaCé _ Shake Sort (trídení pretrásáním) Tento trídicí algoritmus odstranuje nevýhodu s pomalým "potápením" malých prvku z konce rady na její zacátek. Poznámka: Název Shake (pretrásání) pochází z prirovnání k barmanovi, který pracuje se šejkrem. Má v nem nejaké tekutiny a bublinky. Zatrese šejkrem a bublinky probublávají zdola nahoru, pak šejkr obrátí a bublinky zase spechají na druhou stranu. Algoritmus Shake Sort vychází z predchozího - Bubble Sort (trídení probubláváním) - klasický (str. 24), má však dve významná vylepšení: První vylepšení vychází z podstaty pretrásání: jednou budete procházet radu zepredu dozadu (zleva doprava) a necháte "vybublat" nejvetší prvek zdola nahoru (zleva doprava); podruhé budete procházet odzadu dopredu (zprava doleva) a necháte "potopit" nejmenší prvek seshora dolu (zprava doleva); rada se tedy bude rovnat od zacátku a od konce, nejdéle zustane nesetrídená uprostred; pri každém pruchodu radou budete hlídat dolní a horní mez nesetrídeného zbytku prvku uprostred rady (promenné O a H) - tyto meze se budou po každém pruchodu posunovat smerem doprostred rady. algoritmus skoncí, až bude všechno setrídeno, tedy až se meze prekryjí (O > H). Oruhé vylepšení spocívá v hlídání místa v rade, kde došlo k poslední zmene poradl Nebudete už používat promennou ZM (indikátor zmeny), ale promennou PZM (poslední zmena), do níž se bude ukládat poradí (index) prvku, který jste prehazovali se sousedním. Pokud za tímto prvkem už nedošlo ke zmene, je tam už posloupnost setrídená. V dalším pruchodu radou opacným smerem mužete tedy zacít procházet radu až od místa poslední zmeny: horní mez (promenná H) pri smeru dolu bude rovna místu poslední zmeny zmenšenému o hodnotu (tedy PZM -); dolní mez (promenná O) pri smeru nahoru bude rovna místu poslední zmeny zvetšenému o hodnotu (tedy PZM +). O dolní mez nesetrídené cásti rady H horní mez nesetrídené cásti rady PZM... místo poslední zmeny v rade J...rídicí promenná obou cyklu, ve kterých se prochází nesetrídená cást rady A[J]... J-tý prvek v rade A [J+]..0 prvek, který stojí v rade vuci J-tému prvku o jedno místo vpravo, tj. smerem ke konci rady. Procházíte-i prvky od zacátku rady k jejímu konci, pak je to vuci J-tému prvku prvek následující. Procházíte-i radu smerem od konce k jejímu zacátku, pak je to vuci J-tému prvku prvek predchozí. vývojový diagram algoritmu Shake Sort je na následující stránce

Algoritmizace. Ing. Jana Pšenčíková. Vzdìlávání, které baví www.computermedia.cz. Nakladatelství a vydavatelství

Algoritmizace. Ing. Jana Pšenčíková. Vzdìlávání, které baví www.computermedia.cz. Nakladatelství a vydavatelství Ing. Jana Pšenčíková Nakladatelství a vydavatelství R Vzdìlávání, které baví www.computermedia.cz Obsah Obsah ALGORITMUS... 7 CO JE TO ALGORITMUS A PROČ VYTVÁŘÍME ALGORITMY... 7 Začátek a konec algoritmu...

Více

Jednoduché cykly 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45.

Jednoduché cykly 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. Jednoduché cykly Tento oddíl obsahuje úlohy na první procvičení práce s cykly. Při řešení každé ze zde uvedených úloh stačí použít vedle podmíněných příkazů jen jediný cyklus. Nepotřebujeme používat ani

Více

Algoritmizace řazení Bubble Sort

Algoritmizace řazení Bubble Sort Algoritmizace řazení Bubble Sort Cílem této kapitoly je seznámit studenta s třídícím algoritmem Bubble Sort, popíšeme zde tuto metodu a porovnáme s jinými algoritmy. Klíčové pojmy: Třídění, Bubble Sort,

Více

II. Úlohy na vložené cykly a podprogramy

II. Úlohy na vložené cykly a podprogramy II. Úlohy na vložené cykly a podprogramy Společné zadání pro příklady 1. - 10. začíná jednou ze dvou možností popisu vstupních dat. Je dána posloupnost (neboli řada) N reálných (resp. celočíselných) hodnot.

Více

Násobení pomocí sčítání

Násobení pomocí sčítání Neznalost zákonů neomlouvá Násobení pomocí sčítání Zadání problému: Vymyslete algoritmus, jak násobit dvě čísla, když operaci násobení neznáme. Upřesnění zadání: Známe čísla, známe operaci sčítání, odčítání.

Více

Programy na PODMÍNĚNÝ příkaz IF a CASE

Programy na PODMÍNĚNÝ příkaz IF a CASE Vstupy a výstupy budou vždy upraveny tak, aby bylo zřejmé, co zadáváme a co se zobrazuje. Není-li určeno, zadáváme přirozená čísla. Je-li to možné, používej generátor náhodných čísel vysvětli, co a jak

Více

Pracovní listy - programování (algoritmy v jazyce Visual Basic) Algoritmus

Pracovní listy - programování (algoritmy v jazyce Visual Basic) Algoritmus Pracovní listy - programování (algoritmy v jazyce Visual Basic) Předmět: Seminář z informatiky a výpočetní techniky Třída: 3. a 4. ročník vyššího stupně gymnázia Algoritmus Zadání v jazyce českém: 1. Je

Více

ALGORITMIZACE Příklady ze života, větvení, cykly

ALGORITMIZACE Příklady ze života, větvení, cykly ALGORITMIZACE Příklady ze života, větvení, cykly Cíl kapitoly: Uvedení do problematiky algoritmizace Klíčové pojmy: Algoritmus, Vlastnosti správného algoritmu, Možnosti zápisu algoritmu, Vývojový diagram,

Více

Dělení. INP 2008 FIT VUT v Brně

Dělení. INP 2008 FIT VUT v Brně ělení INP 28 FIT VUT v Brně ělení čísel s pevnou řádovou čárkou Nejdříve se budeme zabývat dělením čísel s pevnou řádovou čárkou bez znaménka. Pro jednotlivé činitele operace dělení zavedeme symboly d

Více

Aritmetické operace a obvody pro jejich realizaci

Aritmetické operace a obvody pro jejich realizaci Kapitola 4 Aritmetické operace a obvody pro jejich realizaci 4.1 Polyadické číselné soustavy a jejich vlastnosti Polyadické soustavy jsou určeny přirozeným číslem z, kterému se říká základ nebo báze dané

Více

Lekce 01 Úvod do algoritmizace

Lekce 01 Úvod do algoritmizace Počítačové laboratoře bez tajemství aneb naučme se učit algoritmizaci a programování s využitím robotů Lekce 01 Úvod do algoritmizace Tento projekt CZ.1.07/1.3.12/04.0006 je spolufinancován Evropským sociálním

Více

ALGORITMIZACE PROGRAMOVÁNÍ VT3/VT4

ALGORITMIZACE PROGRAMOVÁNÍ VT3/VT4 1 ALGORITMIZACE PROGRAMOVÁNÍ VT3/VT4 Mgr. Martin ŠTOREK LITERATURA ALGORITMIZACE Ing. Jana Pšenčíková ComputerMedia http://www.computermedia.cz/ 2 1 ALGORITMUS Algoritmus je přesný postup, který je potřeba

Více

Test prvočíselnosti. Úkol: otestovat dané číslo N, zda je prvočíslem

Test prvočíselnosti. Úkol: otestovat dané číslo N, zda je prvočíslem Test prvočíselnosti Úkol: otestovat dané číslo N, zda je prvočíslem 1. zkusit všechny dělitele od 2 do N-1 časová složitost O(N) cca N testů 2. stačí zkoušet všechny dělitele od 2 do N/2 (větší dělitel

Více

Náplň. v.0.03 16.02.2014. - Jednoduché příklady na práci s poli v C - Vlastnosti třídění - Způsoby (algoritmy) třídění

Náplň. v.0.03 16.02.2014. - Jednoduché příklady na práci s poli v C - Vlastnosti třídění - Způsoby (algoritmy) třídění Náplň v.0.03 16.02.2014 - Jednoduché příklady na práci s poli v C - Vlastnosti třídění - Způsoby (algoritmy) třídění Spojení dvou samostatně setříděných polí void Spoj(double apole1[], int adelka1, double

Více

Reporting. Ukazatele je možno definovat nad libovolnou tabulkou Helios Orange, která je zapsána v nadstavbě firmy SAPERTA v souboru tabulek:

Reporting. Ukazatele je možno definovat nad libovolnou tabulkou Helios Orange, která je zapsána v nadstavbě firmy SAPERTA v souboru tabulek: Finanční analýza Pojem finanční analýza Finanční analýza umožňuje načítat data podle dimenzí a tyto součty dlouhodobě vyhodnocovat. Pojem finanční analýza není nejpřesnější, protože ukazatele mohou být

Více

Čtvrtek 8. prosince. Pascal - opakování základů. Struktura programu:

Č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

Více

Rozšiřování = vynásobení čitatele i jmenovatele stejným číslem různým od nuly

Rozšiřování = vynásobení čitatele i jmenovatele stejným číslem různým od nuly Rozšiřování a krácení zlomků Rozšiřování vynásobení čitatele i jmenovatele stejným číslem různým od nuly rozšířený zlomek vznikl tak, že jsme čitatel i jmenovatel původního zlomku vynásobili číslem rozšířený

Více

Data v počítači. Informační data. Logické hodnoty. Znakové hodnoty

Data v počítači. Informační data. Logické hodnoty. Znakové hodnoty Data v počítači Informační data (elementární datové typy) Logické hodnoty Znaky Čísla v pevné řádové čárce (celá čísla) v pohyblivé (plovoucí) řád. čárce (reálná čísla) Povelová data (instrukce programu)

Více

Čísla a aritmetika. Řádová čárka = místo, které odděluje celou část čísla od zlomkové.

Čísla a aritmetika. Řádová čárka = místo, které odděluje celou část čísla od zlomkové. Příprava na cvčení č.1 Čísla a artmetka Číselné soustavy Obraz čísla A v soustavě o základu z: m A ( Z ) a z (1) n kde: a je symbol (číslce) z je základ m je počet řádových míst, na kterých má základ kladný

Více

Universita Pardubice Fakulta elektrotechniky a informatiky. Mikroprocesorová technika. Semestrální práce

Universita Pardubice Fakulta elektrotechniky a informatiky. Mikroprocesorová technika. Semestrální práce Universita Pardubice Fakulta elektrotechniky a informatiky Mikroprocesorová technika Semestrální práce Jméno: Chmelař Pavel Datum: 14. 5. 2008 Úkol: Příklad č. 1 V paměti dat je uložen blok 8 b čísel se

Více

Budoucí hodnota anuity Spoření

Budoucí hodnota anuity Spoření Finanční matematika Budoucí hodnota anuity Spoření Doposud vypočítáme konečné (budoucí) hodnoty či počáteční (současné) hodnoty, za předpokladu konstantní (jednorázové) současné hodnoty (jednorázového

Více

Kontingenční tabulky v MS Excel 2010

Kontingenční tabulky v MS Excel 2010 Kontingenční tabulky v MS Excel 2010 Autor: RNDr. Milan Myšák e-mail: milan.mysak@konero.cz Obsah 1 Vytvoření KT... 3 1.1 Data pro KT... 3 1.2 Tvorba KT... 3 2 Tvorba KT z dalších zdrojů dat... 5 2.1 Data

Více

Ovládání Open Office.org Calc Ukládání dokumentu : Levým tlačítkem myši kliknete v menu na Soubor a pak na Uložit jako.

Ovládání Open Office.org Calc Ukládání dokumentu : Levým tlačítkem myši kliknete v menu na Soubor a pak na Uložit jako. Ukládání dokumentu : Levým tlačítkem myši kliknete v menu na Soubor a pak na Uložit jako. Otevře se tabulka, v které si najdete místo adresář, pomocí malé šedočerné šipky (jako na obrázku), do kterého

Více

Inovace a zkvalitnění výuky prostřednictvím ICT Základy programování a algoritmizace úloh Třídění dat. Ing. Hodál Jaroslav, Ph.D. VY_32_INOVACE_26 04

Inovace a zkvalitnění výuky prostřednictvím ICT Základy programování a algoritmizace úloh Třídění dat. Ing. Hodál Jaroslav, Ph.D. VY_32_INOVACE_26 04 Střední průmyslová škola a Vyšší odborná škola technická Brno, Sokolská 1 Šablona: Název: Téma: Inovace a zkvalitnění výuky prostřednictvím ICT Základy programování a algoritmizace úloh Třídění dat Autor:

Více

7 = 3 = = Učivo Vysvětlení Př. + pozn. Zlomek = vyjádření části celku 3 část snědla jsem 3 kousky

7 = 3 = = Učivo Vysvětlení Př. + pozn. Zlomek = vyjádření části celku 3 část snědla jsem 3 kousky 0 Učivo Vysvětlení Př. + pozn. Zlomek vyjádření části celku část snědla jsem kousky celek a pizza byla rozdělena na kousky Pojem zlomek Vyjádření zlomku Základní tvar: čitatel a jmenovatel jsou nesoudělná

Více

ŘEŠENÍ KVADRATICKÝCH A ZLOMKOVÝCH NEROVNIC V ŠESTI BODECH

ŘEŠENÍ KVADRATICKÝCH A ZLOMKOVÝCH NEROVNIC V ŠESTI BODECH (Tento text je součástí výkladu k definičním oborům, tam najdete další příklady a pokud chcete část tohoto textu někde použít, můžete čerpat ze stažené kompletní verze definičních oborů ve formátu.doc.)

Více

ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE

ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE FAKULTA STAVEBNÍ OBOR GEODÉZIE A KARTOGRAFIE KATEDRA VYŠŠÍ GEODÉZIE název předmětu úloha/zadání název úlohy Základy fyzikální geodézie 3/19 Legendreovy přidružené funkce

Více

ÚLOHY S POLYGONEM. Polygon řetězec úseček, poslední bod je totožný s prvním. 6 bodů: X1, Y1 až X6,Y6 Y1=X6, Y1=Y6 STANOVENÍ PLOCHY JEDNOHO POLYGONU

ÚLOHY S POLYGONEM. Polygon řetězec úseček, poslední bod je totožný s prvním. 6 bodů: X1, Y1 až X6,Y6 Y1=X6, Y1=Y6 STANOVENÍ PLOCHY JEDNOHO POLYGONU ÚLOHY S POLYGONEM Polygon řetězec úseček, poslední bod je totožný s prvním 6 bodů: X1, Y1 až X6,Y6 Y1=X6, Y1=Y6 STANOVENÍ PLOCHY JEDNOHO POLYGONU 3 úsečky (segmenty) v horní části 2 úsečky ve spodní části

Více

Matematika B101MA1, B101MA2

Matematika B101MA1, B101MA2 Matematika B101MA1, B101MA2 Zařazení předmětu: povinný předmět 1.ročníku bc studia 2 semestry Rozsah předmětu: prezenční studium 2 + 2 kombinované studium 16 + 0 / semestr Zakončení předmětu: ZS zápočet

Více

Iterační výpočty. Dokumentace k projektu č. 2 do IZP. 24. listopadu 2004

Iterační výpočty. Dokumentace k projektu č. 2 do IZP. 24. listopadu 2004 Dokumentace k projektu č. 2 do IZP Iterační výpočty 24. listopadu 2004 Autor: Kamil Dudka, xdudka00@stud.fit.vutbr.cz Fakulta Informačních Technologií Vysoké Učení Technické v Brně Obsah 1. Úvod...3 2.

Více

PŘEDNÁŠKA 2 POSLOUPNOSTI

PŘEDNÁŠKA 2 POSLOUPNOSTI PŘEDNÁŠKA 2 POSLOUPNOSTI 2.1 Zobrazení 2 Definice 1. Uvažujme libovolné neprázdné množiny A, B. Zobrazení množiny A do množiny B je definováno jako množina F uspořádaných dvojic (x, y A B, kde ke každému

Více

Nechť je číselná posloupnost. Pro všechna položme. Posloupnost nazýváme posloupnost částečných součtů řady.

Nechť je číselná posloupnost. Pro všechna položme. Posloupnost nazýváme posloupnost částečných součtů řady. Číselné řady Definice (Posloupnost částečných součtů číselné řady). Nechť je číselná posloupnost. Pro všechna položme. Posloupnost nazýváme posloupnost částečných součtů řady. Definice (Součet číselné

Více

VY_32_INOVACE_CTE_2.MA_04_Aritmetické operace v binární soustavě Střední odborná škola a Střední odborné učiliště, Dubno Ing.

VY_32_INOVACE_CTE_2.MA_04_Aritmetické operace v binární soustavě Střední odborná škola a Střední odborné učiliště, Dubno Ing. Číslo projektu Číslo materiálu Název školy Autor Tematická oblast Ročník CZ.1.07/1.5.00/34.0581 VY_32_INOVACE_CTE_2.MA_04_Aritmetické operace v binární soustavě Střední odborná škola a Střední odborné

Více

Časové řady - Cvičení

Časové řady - Cvičení Časové řady - Cvičení Příklad 2: Zobrazte měsíční časovou řadu míry nezaměstnanosti v obci Rybitví za roky 2005-2010. Příslušná data naleznete v souboru cas_rada.xlsx. Řešení: 1. Pro transformaci dat do

Více

MQL4 COURSE. By Coders guru www.forex-tsd.com. -4 Operace & Výrazy

MQL4 COURSE. By Coders guru www.forex-tsd.com. -4 Operace & Výrazy MQL4 COURSE By Coders guru www.forex-tsd.com -4 Operace & Výrazy Vítejte ve čtvrté lekci mého kurzu MQL4. Předchozí lekce Datové Typy prezentovaly mnoho nových konceptů ; Doufám, že jste všemu porozuměli,

Více

Číselné soustavy a převody mezi nimi

Číselné soustavy a převody mezi nimi Číselné soustavy a převody mezi nimi Základní požadavek na počítač je schopnost zobrazovat a pamatovat si čísla a provádět operace s těmito čísly. Čísla mohou být zobrazena v různých číselných soustavách.

Více

Úvod do programování 7. hodina

Úvod do programování 7. hodina Úvod do programování 7. hodina RNDr. Jan Lánský, Ph.D. Katedra informatiky a matematiky Fakulta ekonomických studií Vysoká škola finanční a správní 2015 Umíme z minulé hodiny Syntax Znaky Vlastní implementace

Více

Výrazy a operátory. Operátory Unární - unární a unární + Např.: a +b

Výrazy a operátory. Operátory Unární - unární a unární + Např.: a +b Výrazy a operátory i = 2 i = 2; to je výraz to je příkaz 4. Operátory Unární - unární a unární + Např.: +5-5 -8.345 -a +b - unární ++ - inkrement - zvýší hodnotu proměnné o 1 - unární -- - dekrement -

Více

ZŠ ÚnO, Bratří Čapků 1332

ZŠ ÚnO, Bratří Čapků 1332 Úvodní obrazovka Menu Návrat na hlavní stránku Obsah Výsledky Poznámky Záložky edunet Konec Matematika 1 (pro 9-12 let) LangMaster Obsah (střední část) výběr tématu - dvojklikem v seznamu témat (horní

Více

4.2.5 Orientovaný úhel II

4.2.5 Orientovaný úhel II .2.5 Orientovaný úhel II Předpoklady: 20 Minulá hodina Orientovaný úhel rozlišujeme: směr otáčení (proti směru hodinových ručiček je kladný směr), počáteční rameno. Každý úhel má nekonečně mnoho velikostí:...,

Více

Polynomy. Mgr. Veronika Švandová a Mgr. Zdeněk Kříž, Ph. D. 1.1 Teorie Zavedení polynomů Operace s polynomy...

Polynomy. Mgr. Veronika Švandová a Mgr. Zdeněk Kříž, Ph. D. 1.1 Teorie Zavedení polynomů Operace s polynomy... Polynomy Obsah Mgr. Veronika Švandová a Mgr. Zdeněk Kříž, Ph. D. 1 Základní vlastnosti polynomů 2 1.1 Teorie........................................... 2 1.1.1 Zavedení polynomů................................

Více

POSLOUPNOSTI A ŘADY INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ. Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky

POSLOUPNOSTI A ŘADY INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ. Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky POSLOUPNOSTI A ŘADY Gymnázium Jiřího Wolkera v Prostějově Výukové materiály z matematiky pro vyšší gymnázia Autoři projektu Student na prahu 21. století - využití ICT ve vyučování matematiky na gymnáziu

Více

Algoritmizace prostorových úloh

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 Třídění, vyhledávání Daniela Szturcová

Více

0.1 Úvod do lineární algebry

0.1 Úvod do lineární algebry Matematika KMI/PMATE 1 01 Úvod do lineární algebry 011 Lineární rovnice o 2 neznámých Definice 011 Lineární rovnice o dvou neznámých x, y je rovnice, která může být vyjádřena ve tvaru ax + by = c, kde

Více

FUNKCE 3. Autor: Mgr. Dana Kaprálová. Datum (období) tvorby: září, říjen 2013. Ročník: sedmý. Vzdělávací oblast: Informatika a výpočetní technika

FUNKCE 3. Autor: Mgr. Dana Kaprálová. Datum (období) tvorby: září, říjen 2013. Ročník: sedmý. Vzdělávací oblast: Informatika a výpočetní technika FUNKCE 3 Autor: Mgr. Dana Kaprálová Datum (období) tvorby: září, říjen 2013 Ročník: sedmý Vzdělávací oblast: Informatika a výpočetní technika 1 Anotace: Žáci se seznámí se základní obsluhou tabulkového

Více

POSLOUPNOSTI A ŘADY INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ

POSLOUPNOSTI A ŘADY INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ POSLOUPNOSTI A ŘADY Gymnázium Jiřího Wolkera v Prostějově Výukové materiály z matematiky pro vyšší gymnázia Autoři projektu Student na prahu 21. století - využití ICT ve vyučování matematiky na gymnáziu

Více

Intervalové stromy. Představme si, že máme posloupnost celých čísel p 0, p 1,... p N 1, se kterou budeme. 1. Změna jednoho čísla v posloupnosti.

Intervalové stromy. Představme si, že máme posloupnost celých čísel p 0, p 1,... p N 1, se kterou budeme. 1. Změna jednoho čísla v posloupnosti. Intervalové stromy Představme si, že máme posloupnost celých čísel p 0, p 1,... p N 1, se kterou budeme průběžně provádět tyto dvě operace: 1. Změna jednoho čísla v posloupnosti. 2. Zjištění součtu čísel

Více

Projekt OPVK - CZ.1.07/1.1.00/ Matematika pro všechny. Univerzita Palackého v Olomouci

Projekt OPVK - CZ.1.07/1.1.00/ Matematika pro všechny. Univerzita Palackého v Olomouci Projekt OPVK - CZ.1.07/1.1.00/26.0047 Matematika pro všechny Univerzita Palackého v Olomouci Tematický okruh: Závislosti a funkční vztahy Gradovaný řetězec úloh Téma: geometrická posloupnost, geometrická

Více

Programování v Pascalu. Ing. Jana Pšenčíková

Programování v Pascalu. Ing. Jana Pšenčíková Programování v Pascalu Ing. Jana Pšenčíková R Obsah Obsah VYSVĚTLIVKY K PRVKŮM POUŽITÝM V KNIZE...7 POJMY A PRVKY POUŽITÉ V TEXTU... 7 CO NAJDETE V TÉTO KNIZE... 8 VĚNOVÁNÍ... 8 SOFTWARE A JEHO ŽIVOTNÍ

Více

4.2.5 Orientovaný úhel II. π π = π = π (není násobek 2π ) 115 π není velikost úhlu α. Předpoklady: Nejdříve opakování z minulé hodiny.

4.2.5 Orientovaný úhel II. π π = π = π (není násobek 2π ) 115 π není velikost úhlu α. Předpoklady: Nejdříve opakování z minulé hodiny. .2. Orientovaný úhel II Předpoklady: 20 Nejdříve opakování z minulé hodiny. Př. 1: Rozhodni, které z následujících hodnot jsou velikosti úhlu α = π. a) 11 π b) 7 a) Pokud je úhel π základní velikostí úhlu

Více

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 21.

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 21. Vyhledávání doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 21. září 2018 Jiří Dvorský (VŠB TUO) Vyhledávání 242 / 433 Osnova přednášky

Více

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 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

Více

1 Projekce a projektory

1 Projekce a projektory Cvičení 3 - zadání a řešení úloh Základy numerické matematiky - NMNM20 Verze z 5. října 208 Projekce a projektory Opakování ortogonální projekce Definice (Ortogonální projekce). Uvažujme V vektorový prostor

Více

ZLOMKY A RACIONÁLNÍ ČÍSLA. Pojem zlomku. Zlomek zápis části celku. a b. a je část, b je celek, zlomková čára

ZLOMKY A RACIONÁLNÍ ČÍSLA. Pojem zlomku. Zlomek zápis části celku. a b. a je část, b je celek, zlomková čára 9... ZLOMKY A RACIONÁLNÍ ČÍSLA Pojem zlomku Zlomek zápis části celku a b a je část, b je celek, zlomková čára Každé číslo zapsané zlomkem lze vyjádřit jako číslo desetinné 7 Zlomková čára je dělící čára

Více

Už známe datové typy pro representaci celých čísel i typy pro representaci

Už známe datové typy pro representaci celých čísel i typy pro representaci Dlouhá čísla Tomáš Holan, dlouha.txt, Verse: 19. února 2006. Už známe datové typy pro representaci celých čísel i typy pro representaci desetinných čísel. Co ale dělat, když nám žádný z dostupných datových

Více

Matematika (CŽV Kadaň) aneb Úvod do lineární algebry Matice a soustavy rovnic

Matematika (CŽV Kadaň) aneb Úvod do lineární algebry Matice a soustavy rovnic Přednáška třetí (a pravděpodobně i čtvrtá) aneb Úvod do lineární algebry Matice a soustavy rovnic Lineární rovnice o 2 neznámých Lineární rovnice o 2 neznámých Lineární rovnice o dvou neznámých x, y je

Více

Čísla v plovoucířádovéčárce. INP 2008 FIT VUT v Brně

Čísla v plovoucířádovéčárce. INP 2008 FIT VUT v Brně Čísla v plovoucířádovéčárce INP 2008 FIT VUT v Brně Čísla v pevné vs plovoucí řádové čárce Pevnářádováčárka FX bez desetinné části (8 bitů) Přímý kód: 0 až 255 Doplňkový kód: -128 až 127 aj. s desetinnou

Více

Kódováni dat. Kódy používané pro strojové operace

Kódováni dat. Kódy používané pro strojové operace Kódováni dat Před zpracováním dat například v počítači je třeba znaky převést do tvaru, kterému počítač rozumí, tj. přiřadit jim určité kombinace bitů. Tomuto převodu se říká kódování. Kód je předpis pro

Více

Komplexní čísla, Kombinatorika, pravděpodobnost a statistika, Posloupnosti a řady

Komplexní čísla, Kombinatorika, pravděpodobnost a statistika, Posloupnosti a řady Předmět: Náplň: Třída: Počet hodin: Pomůcky: Matematika Komplexní čísla, Kombinatorika, pravděpodobnost a statistika, Posloupnosti a řady 4. ročník a oktáva 3 hodiny týdně PC a dataprojektor, učebnice

Více

Průměr je ve statistice často používaná hodnota, která se počítá jako aritmetický průměr hodnot.

Průměr je ve statistice často používaná hodnota, která se počítá jako aritmetický průměr hodnot. Průměr Průměr je ve statistice často používaná hodnota, která se počítá jako aritmetický průměr hodnot. Co je to průměr # Průměrem se rozumí klasický aritmetický průměr sledovaných hodnot. Můžeme si pro

Více

Instrukce: Jednotlivé části nejdou přesně po sobě, jak jsme se učili, je to shrnutí.

Instrukce: Jednotlivé části nejdou přesně po sobě, jak jsme se učili, je to shrnutí. Instrukce: Vytiskněte si tenhle přehled, vybarvěte důležité části (zvýrazňovačkou, pastelkami) tak, aby jste se rychle orientovali. Při počítání příkladů jej mějte před sebou! a dívejte se do něj. Možná

Více

Prohledávání do šířky = algoritmus vlny

Prohledávání do šířky = algoritmus vlny Prohledávání do šířky = algoritmus vlny - souběžně zkoušet všechny možné varianty pokračování výpočtu, dokud nenajdeme řešení úlohy průchod stromem všech možných cest výpočtu do šířky, po vrstvách (v každé

Více

ARITMETICKÉ OPERACE V BINÁRNÍ SOUSTAVĚ

ARITMETICKÉ OPERACE V BINÁRNÍ SOUSTAVĚ Sčítání binárních čísel Binární čísla je možné sčítat stejným způsobem, jakým sčítáme čísla desítková. Příklad je uveden v tabulce níže. K přenosu jedničky do vyššího řádu dojde tehdy, jeli výsledkem součtu

Více

3. Reálná čísla. většinou racionálních čísel. V analytických úvahách, které praktickým výpočtům

3. Reálná čísla. většinou racionálních čísel. V analytických úvahách, které praktickým výpočtům RACIONÁLNÍ A IRACIONÁLNÍ ČÍSLA Význačnými množinami jsou číselné množiny K nejvýznamnějším patří množina reálných čísel, obsahující jako podmnožiny množiny přirozených, celých, racionálních a iracionálních

Více

0.1 Úvod do lineární algebry

0.1 Úvod do lineární algebry Matematika KMI/PMATE 1 01 Úvod do lineární algebry 011 Vektory Definice 011 Vektorem aritmetického prostorur n budeme rozumět uspořádanou n-tici reálných čísel x 1, x 2,, x n Definice 012 Definice sčítání

Více

2.3.7 Lineární rovnice s více neznámými I

2.3.7 Lineární rovnice s více neznámými I ..7 Lineární rovnice s více neznámými I Předpoklady: 01 Pedagogická poznámka: Následující hodinu považuji za velmi důležitou hlavně kvůli pochopení soustav rovnic, které mají více než jedno řešení. Proto

Více

8.2.11 Příklady z finanční matematiky II

8.2.11 Příklady z finanční matematiky II 8.2. Příklady z finanční matematiky II Předpoklady: 82 Inflace Peníze nemají v dnešní době žádnou hodnotu samy o sobě, jejich používání reguluje stát, v případě zhroucení ekonomiky se může stát, že svou

Více

Dynamické datové struktury III.

Dynamické datové struktury III. Dynamické datové struktury III. Halda. Tomáš Bayer bayertom@natur.cuni.cz Katedra aplikované geoinformatiky a kartografie, Přírodovědecká fakulta UK. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované

Více

Nerovnice a nerovnice v součinovém nebo v podílovém tvaru

Nerovnice a nerovnice v součinovém nebo v podílovém tvaru Variace 1 Nerovnice a nerovnice v součinovém nebo v podílovém tvaru Autor: Mgr. Jaromír JUŘEK Kopírování a jakékoliv další využití výukového materiálu je povoleno pouze s uvedením odkazu na www.jarjurek.cz

Více

Gymnázium Jiřího Ortena, Kutná Hora

Gymnázium Jiřího Ortena, Kutná Hora Předmět: Náplň: Třída: Počet hodin: Pomůcky: Cvičení z matematiky algebra (CZMa) Systematizace a prohloubení učiva matematiky: Číselné obory, Algebraické výrazy, Rovnice, Funkce, Posloupnosti, Diferenciální

Více

Nový způsob práce s průběžnou klasifikací lze nastavit pouze tehdy, je-li průběžná klasifikace v evidenčním pololetí a školním roce prázdná.

Nový způsob práce s průběžnou klasifikací lze nastavit pouze tehdy, je-li průběžná klasifikace v evidenčním pololetí a školním roce prázdná. Průběžná klasifikace Nová verze modulu Klasifikace žáků přináší novinky především v práci s průběžnou klasifikací. Pro zadání průběžné klasifikace ve třídě doposud existovaly 3 funkce Průběžná klasifikace,

Více

Požadavky k opravným zkouškám z matematiky školní rok 2014-2015

Požadavky k opravným zkouškám z matematiky školní rok 2014-2015 Požadavky k opravným zkouškám z matematiky školní rok 2014-2015 1. ročník (první pololetí, druhé pololetí) 1) Množiny. Číselné obory N, Z, Q, I, R. 2) Absolutní hodnota reálného čísla, intervaly. 3) Procenta,

Více

Michal Fusek. 10. přednáška z AMA1. Ústav matematiky FEKT VUT, Michal Fusek 1 / 62

Michal Fusek. 10. přednáška z AMA1. Ústav matematiky FEKT VUT, Michal Fusek 1 / 62 Nekonečné řady Michal Fusek Ústav matematiky FEKT VUT, fusekmi@feec.vutbr.cz 0. přednáška z AMA Michal Fusek (fusekmi@feec.vutbr.cz) / 62 Obsah Nekonečné číselné řady a určování jejich součtů 2 Kritéria

Více

2. úkol MI-PAA. Jan Jůna (junajan) 3.11.2013

2. úkol MI-PAA. Jan Jůna (junajan) 3.11.2013 2. úkol MI-PAA Jan Jůna (junajan) 3.11.2013 Specifikaci úlohy Problém batohu je jedním z nejjednodušších NP-těžkých problémů. V literatuře najdeme množství jeho variant, které mají obecně různé nároky

Více

Mikroprocesorová technika (BMPT)

Mikroprocesorová technika (BMPT) Mikroprocesorová technika (BMPT) Přednáška č. 10 Číselné soustavy v mikroprocesorové technice Ing. Tomáš Frýza, Ph.D. Obsah přednášky Číselné soustavy v mikroprocesorové technice Dekadická, binární, hexadecimální

Více

Převody mezi číselnými soustavami

Převody mezi číselnými soustavami Převody mezi číselnými soustavami 1. Převod čísla do dekadické soustavy,kde Z je celé číslo, pro které platí a Řešením je převod pomocí Hornerova schématu Příklad: Převeďte číslo F 3 = 2101 do soustavy

Více

I. ZÁVĚREČNÁ ZPRÁVA PROJEKTU

I. ZÁVĚREČNÁ ZPRÁVA PROJEKTU I. ZÁVĚREČNÁ ZPRÁVA PROJEKTU IGA číslo projektu C_VŠCHT_2015_ ifis číslo projektu 445-17-5642 Název projektu Řešitel Inovace a modernizace předmětu Úvod do programování a algoritmů Ing. Jana Finkeová,

Více

ZŠ ÚnO, Bratří Čapků 1332

ZŠ ÚnO, Bratří Čapků 1332 Úvodní obrazovka Menu (vlevo nahoře) Návrat na hlavní stránku Obsah Výsledky Poznámky Záložky edunet Konec Matematika 1 (pro 12-16 let) LangMaster Obsah (střední část) výběr tématu - dvojklikem v seznamu

Více

Svobodná chebská škola, základní škola a gymnázium s.r.o. Dělitelnost Rozklad na součin prvočísel. Dušan Astaloš

Svobodná chebská škola, základní škola a gymnázium s.r.o. Dělitelnost Rozklad na součin prvočísel. Dušan Astaloš METODICKÝ LIST DA10 Název tématu: Autor: Předmět: Dělitelnost Rozklad na součin prvočísel Dušan Astaloš Matematika Ročník: 6. Učebnice: Kapitola, oddíl: Metody výuky: Formy výuky: Cíl výuky: Získané dovednosti:

Více

Použití derivací L HOSPITALOVO PRAVIDLO POČÍTÁNÍ LIMIT. Monotónie. Konvexita. V této části budou uvedena některá použití derivací.

Použití derivací L HOSPITALOVO PRAVIDLO POČÍTÁNÍ LIMIT. Monotónie. Konvexita. V této části budou uvedena některá použití derivací. V této části budou uvedena některá použití derivací. Použití derivací L HOSPITALOVO PRAVIDLO POČÍTÁNÍ LIMIT Tvrzení je uvedeno pro jednostrannou itu zprava. Samozřejmě obdobné tvrzení platí pro itu zleva

Více

Projektč.3dopředmětuIZP. Maticové operace

Projektč.3dopředmětuIZP. Maticové operace Projektč.3dopředmětuIZP Maticové operace 17. prosince 2006 Kamil Dudka, xdudka00@stud.fit.vutbr.cz Fakulta informačních technologií Vysoké Učení Technické v Brně Obsah 1 Úvod 1 2 Analýza problému 1 2.1

Více

Stěžejní funkce MS Excel 2007/2010, jejich ovládání a možnosti využití

Stěžejní funkce MS Excel 2007/2010, jejich ovládání a možnosti využití Stěžejní funkce MS Excel 2007/2010, jejich ovládání a možnosti využití Proč Excel? Práce s Excelem obnáší množství operací s tabulkami a jejich obsahem. Jejich jednotlivé buňky jsou uspořádány do sloupců

Více

Základy algoritmizace

Základy algoritmizace Algoritmus Toto je sice na první pohled pravdivá, ale při bližším prozkoumání nepřesná definice. Například některé matematické postupy by této definici vyhovovaly, ale nejsou algoritmy. Přesné znění definice

Více

Úvod. Tlačítka. Typ baterie

Úvod. Tlačítka. Typ baterie Math Professor Úvod Kalkulačka je určena dětem jako pomůcka k výuce matematiky. Pomáhá trénovat mozek k rychlejším výpočtům, budovat logické myšlení a zdokonalovat paměť. Tlačítka Stiskněte pro vstup do

Více

pracovní list studenta

pracovní list studenta Výstup RVP: Klíčová slova: pracovní list studenta Funkce kvadratická funkce Mirek Kubera žák načrtne grafy požadovaných funkcí, formuluje a zdůvodňuje vlastnosti studovaných funkcí, modeluje závislosti

Více

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 12.

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 12. Vyhledávání doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 12. září 2016 Jiří Dvorský (VŠB TUO) Vyhledávání 201 / 344 Osnova přednášky

Více

CVIČNÝ TEST 37. OBSAH I. Cvičný test 2. Mgr. Tomáš Kotler. II. Autorské řešení 5 III. Klíč 13 IV. Záznamový list 15

CVIČNÝ TEST 37. OBSAH I. Cvičný test 2. Mgr. Tomáš Kotler. II. Autorské řešení 5 III. Klíč 13 IV. Záznamový list 15 CVIČNÝ TEST 37 Mgr. Tomáš Kotler OBSAH I. Cvičný test 2 II. Autorské řešení 5 III. Klíč 13 IV. Záznamový list 15 I. CVIČNÝ TEST VÝCHOZÍ TEXT A OBRÁZEK K ÚLOZE 1 Na staré hliněné desce je namalován čtverec

Více

CVIČNÝ TEST 10. OBSAH I. Cvičný test 2. Mgr. Renáta Koubková. II. Autorské řešení 6 III. Klíč 17 IV. Záznamový list 19

CVIČNÝ TEST 10. OBSAH I. Cvičný test 2. Mgr. Renáta Koubková. II. Autorské řešení 6 III. Klíč 17 IV. Záznamový list 19 CVIČNÝ TEST 10 Mgr. Renáta Koubková OBSAH I. Cvičný test 2 II. Autorské řešení 6 III. Klíč 17 IV. Záznamový list 19 I. CVIČNÝ TEST 1 Pro x R řešte rovnici: 5 x 1 + 5 x + 5 x + 3 = 3 155. 2 Za předpokladu

Více

Vzorce. Suma. Tvorba vzorce napsáním. Tvorba vzorců průvodcem

Vzorce. Suma. Tvorba vzorce napsáním. Tvorba vzorců průvodcem Vzorce Vzorce v Excelu lze zadávat dvěma způsoby. Buď známe přesný zápis vzorce a přímo ho do buňky napíšeme, nebo použijeme takzvaného průvodce při tvorbě vzorce (zejména u složitějších funkcí). Tvorba

Více

Posloupnosti a řady. a n+1 = a n + 4, a 1 = 5 a n+1 = a n + 5, a 1 = 5. a n+1 = a n+1 = n + 1 n a n, a 1 = 1 2

Posloupnosti a řady. a n+1 = a n + 4, a 1 = 5 a n+1 = a n + 5, a 1 = 5. a n+1 = a n+1 = n + 1 n a n, a 1 = 1 2 Vlastnosti posloupností 90000680 (level ): Je dána posloupnost (an + b), ve které platí, že a = a a 4 = 8. Potom: Posloupnosti a řady 900006807 (level ): Které z čísel 5, 5, 8, 47 není členem posloupnosti

Více

IB112 Základy matematiky

IB112 Základy matematiky IB112 Základy matematiky Řešení soustavy lineárních rovnic, matice, vektory Jan Strejček IB112 Základy matematiky: Řešení soustavy lineárních rovnic, matice, vektory 2/53 Obsah Soustava lineárních rovnic

Více

Algoritmy I, složitost

Algoritmy I, složitost A0B36PRI - PROGRAMOVÁNÍ Algoritmy I, složitost České vysoké učení technické Fakulta elektrotechnická v 1.01 Rychlost... Jeden algoritmus (program, postup, metoda ) je rychlejší než druhý. Co ta věta znamená??

Více

1. Základní pojmy a číselné soustavy

1. Základní pojmy a číselné soustavy 1. Základní pojmy a číselné soustavy 1.1. Základní pojmy Hardware (technické vybavení počítače) Souhrnný název pro veškerá fyzická zařízení, kterými je počítač vybaven. Software (programové vybavení počítače)

Více

Požadavky k opravným zkouškám z matematiky školní rok 2013-2014

Požadavky k opravným zkouškám z matematiky školní rok 2013-2014 Požadavky k opravným zkouškám z matematiky školní rok 2013-2014 1. ročník (první pololetí, druhé pololetí) 1) Množiny. Číselné obory N, Z, Q, I, R. 2) Absolutní hodnota reálného čísla, intervaly. 3) Procenta,

Více

Micro:bit lekce 4. Cyklus s určeným počtem opakování cyklus Repeat. Cyklus s počtem opakování daným řídicí proměnnou cyklus For from to

Micro:bit lekce 4. Cyklus s určeným počtem opakování cyklus Repeat. Cyklus s počtem opakování daným řídicí proměnnou cyklus For from to Micro:bit lekce 4. Cykly (iterační příkazy) - Opakují dokola několikrát kus programu, potom program pokračuje dál. - Buď předem určeným počtem kolikrát, nebo do splnění nějaké podmínky. - Bloky cyklů najdeme

Více

Sada 1 - Základy programování

Sada 1 - Základy programování S třední škola stavební Jihlava Sada 1 - Základy programování 17. Řadící algoritmy Digitální učební materiál projektu: SŠS Jihlava šablony registrační číslo projektu:cz.1.09/1.5.00/34.0284 Šablona: III/2

Více

Posloupnosti a jejich limity

Posloupnosti a jejich limity KMA/MAT Přednáška č. 7, Posloupnosti a jejich ity 5. listopadu 203 Motivační příklady Prozkoumejme, zatím laicky, následující posloupnosti: Posloupnost, 4, 9,..., n 2,... : Hodnoty rostou nade všechny

Více

Matematika NÁRODNÍ SROVNÁVACÍ ZKOUŠKY DUBNA 2017

Matematika NÁRODNÍ SROVNÁVACÍ ZKOUŠKY DUBNA 2017 NÁRODNÍ SROVNÁVACÍ ZKOUŠKY Matematika T DUBNA 07 : 9. dubna 07 D : 830 P P P : 30 M. M. : 30 : 8,8 M. :, % S : -7,5 M. P : -,5 :,4 Zopakujte si základní informace ke zkoušce: n Test obsahuje 30 úloh a

Více

Příklad: Součet náhodných čísel ve vektoru s počtem prvků, které zadá uživatel, pomocí sum() a pomocí cyklu for. Ověříme, že příliš výpisů na

Příklad: Součet náhodných čísel ve vektoru s počtem prvků, které zadá uživatel, pomocí sum() a pomocí cyklu for. Ověříme, že příliš výpisů na Příklad: Součet náhodných čísel ve vektoru s počtem prvků, které zadá uživatel, pomocí sum() a pomocí cyklu for. Ověříme, že příliš výpisů na obrazovku zpomaluje tím, že zobrazíme okno (proužek) o stavu

Více