Hlavním cílem předmětu je naučit studenty algoritmickému myšlení a základním programátorským dovednostem.
Přednáška je vedena na bázi programovacího jazyka Pascal. Programovací jazyk však není cílem,
ale prostředkem. V prvním semestru probereme v podstatě celý jazyk mimo prostředků
pro objektové programování.
V praktickém testu musí studenti prokázat schopnost vytvořit a odladit v daném čase program řešící středně obtížnou úlohu.
Zápočet zapíše studentovi přednášející po té, co student úspěšně složí praktický test a přednášející dostane od vedoucího semináře zprávu, že student splnil všechny podmínky ze semináře.
K praktickým testům se studenti přihlašují pomocí
studijního informačního systému.
Na praktický test se můžete přihlašovat až do dne, kdy se termín koná,
odhlašovat zpravidla do tří dní před termínem (abyste zbytečně neblokovali kapacitu ostatním).
Po uvedeném termínu je možné se odhlásit bez propadnutí termínu
jen ze skutečně vážných důvodů (nemoc) mailem zkoušejícímu.
Praktické testy se konají v posluchárně S1 ve 4. patře budovy na Malostranském náměstí 25,
která se během zkouškového období přemění v počítačovou laboratoř.
Termíny jsou po celé zkouškové období jsou vždy ve středu a v pátek
(s výjimkou posledního týdne, kdy je termín místo pátku již v pondělí 13. února).
V jednom dni mohu vypsat až tři termíny (od 8:00, 13:00 a 17:15 hodin) po 20 studentech.
Budu je však vypisovat postupně, jak o ně bude zájem. Termíny nyní uvedené v rozpisu jako fiktivní s kapacitou 0 budou otevřeny
jakmile budou ostatní termíny v daném dni obsazeny. Pokud vypsané termíny v některém z týdnů nebudou stačit, vypíši další.
Tyto změny budu dělat sám, pokud bych si však zaplnění včas nevšiml, můžete mne na potřebu otevření resp. vypsání dalšího
termínu upozornit mailem.
V laboratoři bude o dva počítače více - jsou rezervovány pro harwarové poruchy.
Můžete tedy na termín přijít i když nejste přihlášeni. Bude-li volný počítač, budete moci test složit.
Přihlášeným studentům se počítač rezervuje nejdéle 5 minut po plánovaném začátku testu.
Termínů ve zkouškovém období je tedy dostatek. Naopak během přednášek v únoru a březnu o ně může být (vzhledem ke kapacitě laboratoří) nouze - mohu však garantovat jeden pokus pro každého. Ve vlastním zájmu se snažte zapsat si test tak, abyste v případě neúspěchu mohli složit i první opravu ještě během zkouškového období. Termíny v posledním týdnu jsou rezervovány pro opravné pokusy.
Pokud by tato pravidla měla v konkrétním případě důsledky jsoucí v rozporu se zdravým rozumem, ozvěte se mi mailem nebo jiným vhodným způsobem. Pravidla nejsou sama sobě účelem, ale "jen" nutným organizačním opatřením pro efektivní a co nejspravedlivější distribuci termínů.
Při testu má student prokázat, že ovládl základy algoritmizace a praktické dovednosti nutné k vytvoření a odladění programu na počítači.
Během 3 hodin musí student samostatně sestavit a odladit na počítači program řešící středně obtížnou úlohu (viz). Pracuje se v prostředí Borland Pascal 7.0. Úlohy jsou formulovány tak, aby nevyžadovaly použítí "pokročilejších" částí jazyka Pascal, které budeme probírat až v druhém semestru (dynamicky alokované proměnné, datové soubory, objektové programování).
Student musí svůj program předvést, vysvětlit jeho funkci, případně být schopen ho v reálném čase jednoduše modifikovat. Hodnotí se nejen funkčnost vytvořeného programu, ale i to, jak je program navržen a naprogramován. Není při tom vyžadována (časová) optimalizace algoritmu. Stačí, nejsou-li ani algorimus ani jeho implementace "vysloveně hloupé". Vzhledem k omezenému času se nepožaduje, aby byl program komentován (i když komentáře vytvářené současně s programemem vám mohou práci na programu podstatně zjednodušit i zrychlit).Pokud zkoušející zjistí, že předávaný program nefunguje správně, může studentovi dát možnost program opravit. Zpravidla však student nedostane takovou možnost více než jednou.
Při práci na testu nejsou povoleny žádné pomůcky. Případné potřebné informace o detailech programovacího jazyka student může zjistit z helpu Borland Pascalu.
Pro úspěšné složení testu jsou potřeba m.j. následující znalosti:
Do konce zkouškového období se o složení praktického testu pokusilo 155 studentů, z nich 78 uspělo. Ze 67 studentů, kteří se pokusili a neuspěli, jeden vyčerpal všechny tři pokusy, 34 vyčerpalo dva pokusy a 32 vyčerpalo jen jeden pokus.
Každý student má právo na ještě jeden pokus po zkouškovém období. Z výše uvedených čísel však vyplývá, že s velkou pravděpodobností budou moci všichni studenti vyčerpat všechny pokusy, které jim zbyly. Vyhražuji si však právo regulovat zápisy druhého pokusu studenta v období po zkouškovém období. Situaci studentů, kteří se z vážných důvodů na test dosud ani jednou nezapsali budu řešit individuálně, je třeba, aby se se mnou co nejdříve spojili.
Po zkouškovém období jsou vypsány čtyři termíny po 24 studentech (ve skutečnosti je počítačů 25) vždy v pátek od 16 hodin v nové laboratoři v přízemí budovy na MS hned vlevo za vchodem. Na tyto termíny se můžete zapisovat od 17.února, z těchto termínů se nelze odhlásit.
Definitivní výsledky praktických testů:
pokusilo se 159 studentů, uspělo 102 studentů, tj. 64%
Vzhledem k tomu, že přibývá studentů, kteří se se programováním poprvé seznamují až na MFF, je účelné obrat "středně obtížná úloha" nějak vysvětlit. Proto jsem vytvořil k praktickým testům krátkou sbírku příkladů. Jde o její první verzi, druhá modifikovaná a definitivní bude přístupná nejpozději 8.ledna.
Pokud student má základní programátorské schopnosti, umí ladit programy a myšlenkově ovládl algoritmizaci úloh sbírky, neměl by mít se složením praktického testu potíže. Rozhodně to však neznamená, že student nutně musí dostat u testu přesně některou z úloh sbírky.
Vyřešení úloh sbírky samo o sobě nesmí být cílem. Je "jen" jedním z dobrých prostředků k dosažením skutečného cíle - naučit se programovat.
Při praktických testech bude používán překladač
Borland Pascal verze 7 v prostředí operačního systému DOS.
Počítače v laboratoři budou odpojeny od sítě.
Důvodem použití tohoto překladače na praktické testy je především ověřená funkce helpů a ladění. Nevýhody plynoucí z toho,
že jde přece jen o starší program se v úlohách, které se mohou vyskytnout v praktických testech, prakticky nemohou projevit.
Tento překladač může pracovat i v prostředí Windows - např. pro ladění zápočtových programů.
Pro zápočtové programu můžete použít i překladač Free Pascal. Má několik výhod: