Cvičení Algoritmizace 1 (NPRG062) a Programování 1 (NPRG030) pro paralelku B/1/IPP-I1X.33`P
Cvičí Mgr. Jiří Šejnoha
Cvičení z Algoritmizace se koná v pondělí od 11:30 v mísnosti N8, na které v jednom bloku navazuje cvičení z
Programování 1, které se koná od 12:20 také v místnosti N8
Stránky přednášky ke cvičení:
Program cvičení
- týden - 30.09.2024 - Notes
- týden - 07.10.2024 - Notes
- týden - 14.10.2024 - Notes
- týden - 21.10.2024 - Notes
- týden - 28.10.2024 - Státní svátek - Výuka se nekoná
- týden - 04.11.2024 - Notes
- týden - 11.11.2024 - Notes
- týden - 18.11.2024 - Notes
- týden - 25.11.2024 - Notes
- týden - 02.12.2024 - Notes
- týden - 09.12.2024 - Notes
- týden - 16.12.2024 - Notes
- týden - 02.01.2024 - Vánoční prázdniny - Výuka se nekoná
- týden - 06.01.2024 - Notes
- týden - 07.01.2024 - Notes
Podmínky zápočtu:
Podmínky zápočtu ze cvičení Algoritmizace:
Všechny části zápočtu jsou nutné k získání zápočtu.
- Domácí úkoly - Primárním cílem domácích úkolů je Vaše procvičení látky z přednášek,
samotné vypracování je prostředkem, kterým se cvičíte. Sekundárním cílem je Vaše přesvedčením mě, že látce rozumíte
(teoreticky i prakticky) dobře.
(Domácí úkoly pište samostatně; no copy, no co-work, no StackOverflow or GPTChat, etc. případné vyjímky
budou explicitně oznámeny; diskuze s kolegy naopak povolena je).
- Zpravidla každý týden; celkem 8 zadání
- Zadané v recodexu
- Pro zápočet je nutné získat alespoň 70% celkového počtu získatelných bodů
- Získáte-li pod 50% získatelných bodů zápočet jste nezískali (vyjímky možné pouze ve velmi rozumných
důvodech (nemoc, válka, atd.); 50%-70% získatelných bodů - body na zápočet lze doplnit zadanými
úkoly
(takto
získatelné body mohou být obtížněji získatelné nežli body z řádných domácích úkolů a je možné, že
domácé
úkoly budete muset
osobně předvést a podrobně vysvětlit či řešení upravit)
- Docházka: za každé plnohodnotně navštívené cvičení lze získat 1bod za docházku
- Aktivita v hodině
- Podvádění zakázáno. Studentské výstupy (domácí úkoly; zápočtový test; chování studenta) jsou/budou
kontrolovány proti plagiátorství.
První nalezení totožného či jinak podezřelého kódu -10 bodů za domácí úkoly, druhý a další prohřešek vede k
nesplnění
zápočtu/předmětu; v případě závažného provinění k formálnímu řešení. Upozornění: prohřešky jsou fakultně
evidovány.
Podmínky zápočtu ze cvičení Programování 1:
Všechny části zápočtu jsou nutné k získání zápočtu.
- Domácí úkoly - Primárním cílem domácích úkolů je Vaše procvičení látky z přednášek,
samotný kód je prostředkem, kterým se cvičíte. Sekundárním cílem je Vaše přesvedčením mě, že látce rozumíte
(teoreticky i prakticky) dobře.
(Domácí úkoly pište samostatně; no copy, no co-work, no StackOverflow or GPTChat, etc. případné vyjímky
budou explicitně oznámeny; diskuze s kolegy naopak povolena je).
Na 2 domácích úkolech bude provedena code review (které domácí úkoly to budou, bude uvedeno při jejich
zadání), a za
domácí úkol budou body přiděleny až v případě, že Váš kód projde, nejen recodex testy, ale i code review
(program Vám může být opakovaně vrácen k
přepracování).
- Zpravidla každý týden
- 0-3 zadání/týden
- Zadané v recodexu
- Pro zápočet je nutné získat alespoň 70% celkového počtu získatelných bodů
- Získáte-li pod 50% získatelných bodů zápočet jste nezískali (vyjímky možné pouze ve velmi rozumných
důvodech (nemoc, válka, atd.); 50%-70% získatelných bodů - body na zápočet lze doplnit zadanými úkoly
(takto
získatelné body mohou být obtížněji získatelné nežli body z řádných domácích úkolů a je možné, že domácé
úkoly budete muset
osobně předvést a podrobně vysvětlit či řešení upravit)
- Závěrečný/zápočtový test - ve vyhlášených termínech (zápočtový týden a ve zkouškovém období; celkem
3 termíny), na 100% napsat a odladit zadaný Python program zadaný v recodexu a v 90 minutách
- Zápočtový program - Python program středního rozsahu, včetně programátorské a uživatelské dokumentace
a testovacích dat/testů. Programem
prokazujete
komplexní zvládnutí látky přednášek včetně algoritmizace, vhodného návrhu architektury a dekompozice kódu,
programování, znalosti programovacího jazyka, efektivnosti návrhu, bezpečnosti kódu, přiměřené dodržení
kódovacího stylu and best practices, ...). Očekává se procedurální nebo objektový návrh programu.
- Zápočtový program se skládá ze dvou povinných základních částí: a) zadání/specifikace a b) vypracování
- Zadání zápočtového programu
- Zaslat do 10 týdne výuky (02.12.2024)
- Forma odevzdání: do Owlu; enroll token:
850cdf30119e; enroll link: https://owl.mff.cuni.cz/join/850cdf30119e
- Zadání musí být schváleno cvičícím, jinak je Zápočtový program brán jako neplatný
- Povinné části (nesplnění jednotlivé části vede k nesplnění části): idea a základní popis problému;
formalizace problému; základní návrh
algoritmu/algoritmického způsobu řešení problému; forma a popis vstupů a výstupů; forma interfacu
(GUI, konzole); případně popis interaktivity; identifikace studenta, předmětu, datum, ...
- Je možné nejdříve zaslat návrh tématu k diskuzi před zasláním specifikace.
- Vypracování
- Zaslat a obhájit finální verzi do 01. 04. 2024 - hard deadline.
- Povinné části vypracování: schválené zadání (vypracování programu bez schváleného zadaní vede k
nesplnění zápočtového programu), program, programátorská a uživatelská dokumentace,
testovací data/testy a osobní individiální obhájení.
- Forma odevzdání: do Owlu; enroll token:
850cdf30119e; enroll link: https://owl.mff.cuni.cz/join/850cdf30119e ;
nahrajete odkaz na Vaše Git uložiště. Každý z Vás má osobní vlákno komunikace.
- Je možné využívat školního GitLab repozitáře.
- Aktivita v hodině.
- Podvádění zakázáno. Studentské výstupy (domácí úkoly; zápočtový test; chování studenta) jsou/budou
kontrolovány proti plagiátorství.
První nalezení totožného či jinak podezřelého kódu -10 bodů za domácí úkoly, druhý a další prohřešek vede k
nesplnění
zápočtu/předmětu; v případě závažného provinění k formálnímu řešení. Upozornění: prohřešky jsou fakultně
evidovány.
Contact
- Konzultace: po domluvě, ideálně před či po cvičení nebo emailem
- Email: jiri.sejnoha #na# mff.cuni.cz