Závěrečná písemka E3011 — předtermín 2023 1 2 3 4 Jméno: UČO: Datum: Při zkoušce je povoleno používat jakékoliv materiály. Naopak je zakázáno kopírovat (celý nebo část) kóá z internetu nebo během písemky s někým komunikovat, včetně chatGPT a poáobných služeb. Pokuá není řečeno jinak, nesmíte používat žááné externí knihovny. Dbejte, aby byl kóá čitelný, správně okomentovaný, proměnné i funkce byly áobře pojmenované. Svou práci nahrajte áo oáevzáávárny predtermin. Pro kažáou úlohu oáevzáejte jeáen .py soubor, můžete je spojit áo jeánogho archivu. Oáevzáejte také tento papír s vyplněnou hlavičkou a přípaánými poznámkami. Příklad 1 (25 bodů). Implementujte algoritmus popsaný níže jako recaman(n). Jedná se o tzv. Recamanovu posloupnost, algoritmus vrací prvních n členů. Stanovte (a napište někam sem) 1462. člen této posloupnosti. Pro testování: rac( 10) vrací [0, 1, 3, 6, 2, 1, 13, 20, 12, 21] Input: n ^--^set R = [0] J return R YES Příklad 2 (25 bodů). Napište funkci coins(x), který rozdělí částku x Kč do hodnot českých mincí, přičemž se snažíme využívat co nejvyšší hodnoty mincí. Např. pro coins(64) vrátí [1,0,1,0,2,0]. [20 bodů] Dalších 5 bodů získáte, pokud vytvoříte hezky formátovaný textový výstup, jako např. níže [5 bodů]. 1 x 50 Kč 1 x 10 Kč 2 x 2 Kč Příklad 3 (25 bodů). Napište funkci naiveSquare (x), která spočítá \y/x] ■ \_y/x\, kde \x\ značí horní celou část x a \_x\ dolní celou část čísla x. Můžete použít knihovnu math a získat 10 bodů. Pokud se vám povede funkci implementovat bez této knihovny, získáte dalších 15 bodů. Kontrolní výstupy: naiveSquare(10) »> 12 naiveSquare(100) »> 100 naiveSquare(3011) »> 2970 Příklad 4 (25 bodů). Spočítejte souřadnice bodu (1,1) poté, co projde postupně následující sérií transformací: zkosení (x, y) \—> rotace (x, y) \—> 1 3 .° 1 'cos(30°) -sin(30°)\ /V sin(30°) cos(30°) / L posunutí (x, y) \—> | ] + { 1 ) \log5(10)J Vypadá to složitě, ale jde jen o to vzít [1,1], vynásobit postupně maticemi výše a nakonec přičíst vektor posunu. Samozřejmě bez použití knihovny math, všechny potřebné funkce už máte. Řešení odevzdejte jako .py soubor, který obsahuje všechny potřebné funkce a sérii příkazů, která vypíše finální souřadnice bodu (1,1). Zde je prostor pro neanonymní vzkazy, připomínky a zpětnou vazbu k předmětu: