{{indexmenu_n>4}}
====== Domácí úkoly ======
Domácí úkoly jsou formálně zadány zadány na přednášce, případně následně otevřeny pro odevzdání v BRUTE. Pro vypracování úkoly (kromě bonusových částí) jsou potřebné znalosti součástí přednášek před zadáním úkolu. Na vybraných cvičeních jsou pak probrány dílčí části pro implementaci úkolů. Na vypracování povinného případně voliteného zadání je uvažován zpravidla jeden týden, viz časy nastavené v [[https://cw.felk.cvut.cz/brute|Odevzdávacím systému]].
===== Hodnocení domácích úkolů =====
^ Číslo úkolu a název ^ Povinné zadání ^ Volitelné zadání ^ Bonusové zadání ^ Termín odevzdání ^ Počet uploadů ^
| [[courses:b0b36prp:hw:hw00|HW 00 - První program]] | 1b | - | - | so 05.10. | 10 |
| [[courses:b0b36prp:hw:hw01|HW 01 - Načítání vstupu, výpočet a výstup]] | 1b | - | - | so 19.10. | 10 |
| [[courses:b0b36prp:hw:hw02|HW 02 - První cyklus]] kontrola [[courses:b0b36prp:resources:tessun:start|CS]] | 2b | - | - | so 26.10. | 5 |
| [[courses:b0b36prp:hw:hw03|HW 03 - Kreslení (ASCII art)]] kontrola [[courses:b0b36prp:resources:tessun:start|CS]]| 2b | 2b | - | so 02.11. | 10 |
| [[courses:b0b36prp:hw:hw04|HW 04 - Prvočíselný rozklad]] kontrola [[courses:b0b36prp:resources:tessun:start|CS]] | 2b | 3b | 5b | so 09.11. (bonus 11.1.2025) | 20 |
| [[courses:b0b36prp:hw:hw05|HW 05 - Caesarova šifra]] kontrola [[courses:b0b36prp:resources:tessun:start|CS]]| 3b | 2b | - | so 23.11. | 20 |
| [[courses:b0b36prp:hw:hw06|HW 06 - Maticové počty]] kontrola [[courses:b0b36prp:resources:tessun:start|CS]]| 2b | 3b | 3b | so 30.11. (bonus 11.1.2025) | 20 |
| [[courses:b0b36prp:hw:hw07|HW 07 - Hledání textu v souborech]] | 3b | 3b | - | so 07.12. | 10 |
| [[courses:b0b36prp:hw:hw08|HW 08 - Kruhová fronta v poli]] | 3b | 2b | - | so 14.12. | 10 |
| [[courses:b0b36prp:hw:hw09|HW 09 - Načítání a ukládání grafu]] | 3+1b | 2b | - | so 21.12. | 10 |
| [[courses:b0b36prp:hw:hw10|HW 10 - Integrace načítání grafu a prioritní fronta v úloze hledání nejkratších cest]] | 3b | 3b | 2b+ {{https://cw.felk.cvut.cz/brute/data/ae/release/2021z_b0b36prp/b0b36prp-ae/web/hw10impls.html|Orientační časy odevzdávaných programů}} ((Soutěž o body - podmínky budou nastaveny na základě průběhu semestru před zadáním domácí úlohy.)) | pá 10.01. \\ (bonus 11.1.2025) | 10 |
^ Celkem bodů za úlohy ^ 25+1b ^ 20b ^ 10b+ ((Plus body ze soutěže.)) ^ ^ ^
Pro získání zápočtu je nutné odevzdat řešení všech domácích úkolů (kladně hodnoceny odevzdávacím systémem). Uvedené maximální počty body za úlohy platí pro včasné odevzdání úloh před uplynutím termínu a při maximálním počtu pokusů odevzdat funkční řešení. V případě překročení maximálního počtu se body snižují uměrně počtu dalších pokusů. Za pozdní odevzdání řešení úlohy jsou strhávány body úměrně době prodlení a to včetně záporných hodnot.
Pro získání zápočtu je potřeba **úspěšně** odevzdat všechny povinné úlohy do **11.1.2025** 23:59 CET!
===== Bodová penalizace za překročení maximálního počtu pokusů odevzdání řešení úlohy =====
Maximální počet pokusů $upload_{max}$ je stanoven pro každou úlohu. Při překročení této hranice větším počtem odevzdání $uploads$ vám bude stržena část bodů plného počtu $points
_{max}$ podle následujícího vzorce:
$$ points = points_{max} \cdot \min\left(1, \dfrac{upload_{max}}{uploads}\right) $$
Příklad hodnocení pro úlohy s 5 a 10 pokusy:
{{ :courses:b0b36prp:hw:plot-body.png |}}
/**{{ :courses:b0b36prp:hw:points.png |}}*/
===== Bodová penalizace za pozdní odevzdání úlohy =====
Penalizace za případné pozdní odevzdání je stanovena na 0.5 bodu za 3 dny (72 h). Body budou odečítány až do úspěšného splnění povinné části. Může se tedy stát, že bude celkové hodnocení úlohy záporné.
Příklad časové penalizace pro úkol HW03, kdy povinné i volitolné zadání je za 2 body:
{{ :courses:b0b36prp:hw:plot-penalizace.png |}}
/**{{ :courses:b0b36prp:hw:points-date.png |}}**/
/**
Bonusová zadání HW04B a HW06B je možné odevzdávat i po vypršení termínu, ale s penalizací 1 bodu maximálně však do **6.1.2022** 23:59 CET!
**/
===== Penalizace za přehlednost a srozumitelnost (čistotu) kódu =====
U HW02, HW03, HW04, HW05 a HW06 je manuálně hodnoceno dodržení [[courses:b0b36prp:resources:tessun:start|pravidel psaní srozumitelného kódu]]. Penále se mohou sčítat až do -100%, kde 100% je dosažený počet bodů za úlohu bez kontroly stylů (tedy za úlohu lze ztratit až všechny body). Kontrola proběhne po uplynutí termínu odevzdání.
===== Pravidla ======
Toto jsou obecná pravidla uplatňovaná v mnoha předmětech, které používají tento CourseWare a UploadSystem. V případě nejasností se obraťte na svého cvičícího.
- Kód či text (dále jen kód) každé domácí úlohy musí být vypracován samostatně. Je běžné v programátorské praxi, že autor pro větší efektivitu své práce cizí kód přejímá a/nebo přizpůsobuje. Niceméně, pro studijní účely je takový postup nežádoucí((V případě studia cizího kódu zkuste zapomínací test. Poté, co kódu porozumíte, počkejte minimálně 24, ale raději 48 hodin, než začnete s vlastní implementací.)). Případné použítí cizího kódu je obvykle explicitně v zadání úlohy povoleno. \\
- Odevzdané práce jsou proto kontrolovány na přítomnost plagiátů. Za plagiát je pokládán každý kód, který se doslovně nebo po zřejmé mechanické syntaktické modifikaci shoduje s kódem jiného autora řešícího tutéž úlohu. \\
- V případě prvního odevzdaného plagiátu musí autor vypracovat úlohu znovu a samostatně. Řešení musí být funkční. I přesto bude řešení hodnoceno nulovým bodovým (procentuálním) ziskem. Bodové (procentuální) podmínky zápočtu jakož i termín odevzdání řešení se přitom nemění. \\
- V případě opakovaného((Toto opakování je míněno napříč předměty v celém studiu, nikoli pouze v rámci jednoho předmětu. Prohřešky jsou v databázi zaznamenány.)) odevzdaného plagiátu neudělí cvičící jeho autorovi zápočet a přednášející bez odkladu klasifikuje autora stupněm F - nedostatečně z celého předmětu. \\
- Vyučující nezaručují, že v případě shody více odevzdaných prací dokáží rozlišit původního autora a plagiátora. \\
- Posluchač, který se svým hodnocením nebo klasifikací nesouhlasí, se může obrátit na vedoucího katedry, která předmět zajišťuje, a dále postupovat podle [[https://www.cvut.cz/sites/default/files/content/7e72349e-3ea5-4693-9853-5147f1238481/cs/20160901-studijni-a-zkusebni-rad-pro-studenty-cvut-ze-dne-8-7-2015.pdf|Studijním a zkušebním řádem ČVUT]], zejména podle článku 10, odstavce 3. nebo článku 10, odstavce 9.
===== Co je plagiát =====
[[http://cs.wikipedia.org/wiki/Plagiát|Plagiátem]] je převzatý text, ilustrace, část počítačového kódu, metoda, i myšlenka (i část téhož) bez uvedení citace pramene.
Každý, kdo ve svém řešení použije výsledky jiného autora, musí tyto převzaté výsledky zřetelně označit a odkázat na původního autora. Jinak se dopouští plagiátorství. Z výukových důvodů dále také není možné používat cizí výsledky v konkrétních předmětech a úlohách, kde se výslovně požaduje samostatná práce, a to i v případě, že by byly převzaté výsledky řádně označeny.
Tato definice plagiátorství nijak nezužuje obvyklé chápání opisování na této univerzitě.
=== Praktické poznámky ===
Ve většině úloh je potřeba se především vyhnout opisování. Pro zabránění opisování použijte zapomínací test. Pokud narazíte na kód (například od kolegy nebo na webu), který odpovídá zadání, nechte si před tím, než začnete sami kódovat, dvoudenní pauzu. Tak zamezíte přílišné inspiraci cizím dílem.
Kolegové studenti, apelujeme na vaši profesionální čest. Opisování a podvádění jsou závažné přečiny proti akademické etice. Pokud si s úlohou nevíte rady, obraťte se na kolegy cvičící/přednášející. Rádi vám poradí a poskytnete jim cennou zpětnou vazbu k výkladu a tématu.
===== Technické informace o Odevzdávacím systému =====
Operační systém (''lsb_release -da''):
Distributor ID: Debian
Description: Debian GNU/Linux 10 (buster)
Release: 10
Codename: buster
Použitý kompilátor (''clang --version''):
clang version 7.0.1-8+deb10u2 (tags/RELEASE_701/final)