# Jak opravovat úkoly Snaž se *napovědět*, ne vyřešit úkol. Pokud to zadání výslovně neříká, dá se problém řešit i jinak, než bychom „chtěli“. Nikdy nenavrhuj vylepšení, která používají něco co ještě v kurzu nebylo (i kdydby byly užitečné nebo *best practice*). Jediná výjimka je, když se účastník sám zeptá jestli to nejde líp. Spíš než lidem ukázat všechny možnosti Pythonu je chci naučit jak spojovat dohromady to, co už umí. I když bude kód míň elegantní. Pozor na to, že někteří jsou napřed a budou používat např. seznamy dřív než jsou v kurzu. Ze začátku neřeš špatné odsazení a jiné PEP-8 prohřešky. Na to bude dost času. ## Týmy Kurz je týmový a úkoly se odevzdávají za celý tým. Na odevzdávátku se ale do kurzu může přihlásit kdokoli. Účty s občanským jménem nejsou účastníci kurzu. ## Konkrétní úkoly ### Želva Obrazce nemusí být přesně takové jako na obrázku; můžou být: - pootočené - větší/menší - u spirál s větší/menší mezerou mezi čárami, příp. může jinak růst (např. logaritmická spirála místo Archimédovy) - kytka může mít jakékoli listy – klidně jen čárky :) Každý má jinak velkou obrazovku. Když se to na obrazovku nevejde, není to chyba. – kolečko jde nakreslit pomocí circle() – troj/čtyř/pětiúhelníky jdou i bez cyklu. Klidně i 95-úhelník. (V dalším úkolu zadá počet stran uživatel, tam už je cyklus potřeba.) ### Řetězce; tabulky z "X" V úkolech, u kterých je zmíněno pojmenování proměnných, vyžaduju hezká jména (např. `cislo_radku`, `sloupec`). Je dobrá v komentářích zmínit proč tak pojmenováváme (aby to bylo srozumitelnější pro ostatní lidi, co ten program čtou). U ostatních ne, ať toho nemusí tolik přepisovat. (Samozřejmě jen pokud se v tom kódu sami neztratí – pak je lepší pojmenovávání proměnných dobrý první krok.) Úkol 12 (Předchozí programy z této sekce upravte tak, aby počet řádků [...] mohl zadat uživatel) je tu hlavně proto, aby lidi používali cykly. Když cykly používají u všech ostatních úkolů (a tedy by tenhle úkol byl jednoduchý), uznávám jen jedno řešení. Jestli ne, trvám na úpravu úkolů co cykly nemají. U Šibenice (první verze) není potřeba ošetřit prázdný nebo příliš dlouhý vstup. To bude za úkol příště. (Doporučuju je ale vyzkoušet; vzniklé chyby jsou často vtipné.) Když si ale někdo Šibenici vylepšuje, tak ho i na tyhle chybky upozorním. Očividně chce víc. ### Seznamy a *n*-tice Úkol 2 (`filtruj_k`): Funkce by měla zvládnout i seznam s prázdným řetězcem. Úkol 5 (řazení s ignorováním 1. písmena): `serad_od_druheho(['krocan', 'prase'])` by mělo vrátit `['prase', 'krocan']`. Když se seřadí jen podle 2. písmena, vyjdou naopak. Úkol 6 (vytvoření balíčku): Pozor na to, že u dvojic záleží na pořadí. Dvojice barva-hodnota je něco úplně jiného než dvojice hodnota-barva. (K tomuhle problému dodám: *Kdyby vaši kolegové z jiného týmu zkusili použít tuhle funkci, tak na tenhle problém narazí.*)