Cvičení z Algoritmizace a Programování 1

pondělí 14:50 a 15:40, N10 (IMPAKT Troja)

Cvičení z obou předmětů je spojeno do jednoho dlouhého cvičení - probíraná látka se u obou předmětů prolíná.

Cvičení z Algoritmizace je vypsáno k přednásce doc. Pavla Töpfera, druhou paralelku vede doc. Tomáš Dvořák. Cvičení z Programování 1 je vypsáno k přednášce Martina Pergela, ale je možné chodit i na přednášku Tomáše Holana. Anglickou paralelku u obou předmětů vede Adam Dingle.

Pokud jste pokročilejší (např. jste řešili KSP), mohlo by se vám líbit cvičení Martina Mareše pro pokročilé.


Informace o aktuální situaci COVID-19

Aktuální situaci najdete zde a zde pro matfyz.


Obsah stránky


Podmínky zápočtu

Podmínky k splnění předmětu jsou různé pro oba předměty:

Algoritmizace

K splnění Algoritmizace musíte získat zápočet + splnit zkoušku z probrané látky. Podmínkou zápočtu je získání alespoň 70 % bodů ze všech zadaných úkolů (těch bude cca 10). Kromě toho lze získat bonusové body (nezapočítávají se do součtu):

  1. Na začátku každé hodiny bude malý testík, kde můžete získat bonusové body.
  2. Občas bude zadán (těžší) úkol za body navíc.
  3. Aktivita v hodině.

Programování 1

K splnění Programování 1 musíte získat zápočet, zkouška je až v letním semestru. Je ale více podmínek pro získání zápočtu:

  1. Zisk alespoň 80 % bodů z úkolů.
  2. Napsání zápočtového testu == program v ReCodExu psaný během cvika (poslední dvě cvika)
  3. Napsání zápočtového programu - téma rozmyslet do listopadu, více info později

Bonusové body

Kromě toho je možné získat body navíc (zvlášť algoritmizace a programování):

  1. Na začátku každé hodiny bude malý testík.
  2. Občas bude zadán (těžší) úkol za body navíc.
  3. Aktivita v hodině.

Body z 2. se připočtou přímo, body (1. + 3.) se přepočítají tak, aby daly dohromady 15 % bodů z Algoritmizace, a 25 % bodů z Programování 1.

Tj. pokud bude zadáno celkem 100b z Programování a jen 10b z (1. + 3.), každý bod aktivity se násobí 2,5.

Informace k zápočtovému programu

Podmínkou zisku zápočtu je zápočtový program, který budete programovat doma během semestru. Do konce listopadu si vyberte téma a zašlete mi ho na mail ke kontrole. Poté vám téma buď schválím, nebo pošlu připomínky/úpravy tématu.

Zápočtový program není nutné psát v Pythonu, pokud chcete použít jiný programovací jazyk, předem se se mnou domluvte (ideálně už v rámci specifikace).

Deadline odevzdání: týden + dva dny po konci zkouškového, tj. 22.02.2022

Výsledek práce mi zašlete ke kontrole tak, abych mohla program spustit a vyzkoušet, také zašlete jeho zdrojový kód. Je možné se domluvit na osobním předvedení. Zkuste program dokončit s předstihem, ať se vám nehromadí povinnosti.

Náležitosti:

Dotazy a konzultace

Sepsala jsem krátké howto na hledání chyb / jak na python.

Konzultační hodiny nemám, napište mi na mail a domluvíme se. Místo at je zavináč, používá se na webech kvůli botům.

Preferuji pracovní: suchoparova at cs.cas.cz

Na urgentní věci osobní: gabi.suchoparova at gmail.com

Pracovní mail většinou večer a o víkendech nečtu, takže některé věci pište rovnou na osobní mail, např.:

Obsah cvičení

Zde budu zveřejňovat stručný přehled toho, co jsme na cviku dělali. Cvičný kód najdete v repozitáři na mém GitHubu.

Minulé testíky: cviko 2, cviko 7, cviko 8

4.10.2021

Úlohy na procvičení

Úvod do programování

11.10.2021

Asymptotická časová složitost

ReCodEx

18.10.2021

25.10.2021

Řešené příklady na O notaci

1.11.2021

8.11.2021

Suploval Ondra Mička.

15.11.2021

22.11.2021

29.11.2021

6.12.2021

13.12.2021

Plán:

20.12.2021

Plán: zápočtový test

3.1.2022

Plán: opravný termín zápočťáku - možná bude jindy dle domluvy (pár lidí má prej předtermín)


FAQ

V čem budeme programovat?

Interpret Pythonu mohu spustit na příkazové řádce. Složitější kód budeme psát v pokročilejším vývojovém prostředí (IDE) jako je Visual Studio Code (VS Code) nebo PyCharm. Pokud používáte Windows, můžete použít Visual Studio, které má více funkcí než VS Code, ale neběží na 🐧 a 🍏.

Na rychlé zkoušení věcí nebo psaní poznámek se hodí Google Colab.

Kam budeme odevzdávat úkoly?

Domácí úkoly budou zadávány a odevzdávány pomocí systému ReCodEx.

Postup pro první přihlášení do ReCodExu:

Kde najdu další materiály na procvičení?

Základní informace a slajdy najdete na stránkách přenášejících, viz výše. Něco najdete i zde.

Algoritmizace

Programování

Nebyl/a jsem nebo nebudu na cvičení, co mám dělat?

Pokud jde jen o jedno cviko (jeden týden nemůžete), buď si probranou látku zjistěte od spolužáků, nebo mi napište na mail. Když napíšete dostatečně dopředu, pošlu vám úvodní testík na mail na začátku cvika.

Pokud jde o delší absenci, dejte mi vědět včas a domluvíme se.

Mám zdravotní problém nebo duševní obtíže, případně nějaké jiné omezení, co mám dělat?

V případě akutních zdravotních problémů je asi nejlepší napsat na studijní, napiště i mě, abych včas prodloužila deadliny apod.

Pokud potřebujete řešit svoje duševní onemocnění nebo jiná omezení, podívejte se na web matfyzu pro studenty se speciálními potřebami. Rozhodně tyhle věci řešte včas, je to lepší, než když je to na poslední chvíli např. před zkouškou.