Py

Z Pascal
Prejsť na: navigácia, hľadanie

Nové pravidlá


Zadania počas semestra

  • počas semestra bude treba vyriešiť 8 - 11 zadaní
  • na vypracovanie každého zadania bude 1 - 2 týždne (2 týždne pre náročnejšie úlohy)
  • jedno zo zadaní bude treba odovzdať do konca semestra (semestrálny projekt) - bude za viac bodov (okolo 25), individuálne zadania pre študentov
  • odovzdané riešenia sa budú hodnotiť bodmi od 5 do 25 (pre každé zadanie bude určené maximum) = celkový súčet (maximum) je 100
    • hodnotiť bude cvičiaci a strhávať bude za zníženú kvalitu riešenia (aj formátovanie a komentáre)
    • za každý začatý týždeň omeškania sa strhne 5 bodov (okrem semestrálneho projektu - ten má určený presný koniec - asi 1. týždeň skúškového)
  • cez semester treba získať aspoň 70 bodov študent nebude pripustený ku skúške (možno sa zníži pásmo pre výpočet záverečnej známky)
  • v 3. semestri: pre niektoré zadania môžu byť určené podmienky pre jazyk, napr. len v konkrétnom jazyku, v dvoch rôznych jazykoch riešiť to isté, v hocijakom jazyku okrem ...

Pozn.

  • nebudeme robiť policajtov, aby sme kontrolovali, či nepodvádzate (opisujete od kolegov, nechávate si vypracovať riešenia ďalšími, opisuje ) - ak to ale (náhodne) zistíme, strácate dvoj/troj-násobný počet bodov, ktoré by sa dali získať za toto zadanie - s veľkou pravdepodobnosťou nebudete kvôli tomu pripustení ku skúške
    • táto penalizácia sa bude týkať aj tých, ktorí poskytnú svoje riešenie ďalším
    • mali by ste si hlavne uvedomiť, že ak nebudete poctivo riešiť zadania, o to ťažšie sa bude robiť skúška
  • každý odovzdaný súbor musí obsahovať kometárovú hlavičku - presný formát (meno a priezvisko, číslo príkladu a prípadne jeho odovzdaná verzia)


Ukážkové rozdelenie zadaní počas semestra

téma zadané v týždni počet týždňov max bodov
1 cyklus 1 1 8
2 moduly 2 1 8
3 rekurzia 3 2 15
4 udalosti 5 1 8
5 hra life 6 1 8
6 lexikálna analýza 7 2 15
7 objekty 9 1 8
8 turingov stroj 10 1 8
9 semestrálny projekt 6 - 22


Skúška

Záverečná známka sa určí z testov počas semestra a praktickej skúšky pri počítači. Riešenia domácich zadaní majú vplyv len na to, či bude študent pripustený, resp. penalizovaný. Hodnotenie sa môžu meniť v rôznych semestroch.

Ukážkové rozdelenie hodnotenia v rôznych semestroch

hodnotenie 1.semester 2.semester 3.semester
priebežný test 10% 10% 10%
záverečný test 20% 30% 40%
praktická skúška 70% 60% 50%


Výpočet známky

Výsledná známka sa vypočíta ako súčet % častí skúšky. Závisí ale od toho, koľko bodov sa získalo zo zadaní počas semestra:

aspoň 70 bodov zo semestra

percentá známka
90 - 100 A
80 - 89 B
70 - 79 C
60 - 69 D
50 - 59 E
0 - 49 Fx

aspoň 60 bodov zo semestra

percentá známka
90 - 100 C
80 - 89 D
70 - 79 E
0 - 69 Fx

aspoň 50 bodov zo semestra

percentá známka
90 - 100 E
0 - 89 Fx


Priebeh cvičení

2-hodinové cvičenie pri počítači:

  • každý študent dostane sadu príkladov, ktorú rieši na počítači (možno v pároch) - 4 až 10 malých príkladov
  • treba vyriešiť aspoň 1/2 príkladov, inak absencia
  • povolené sú maximálne 2 absencie za semester (12 týždňov)
  • spolupráca na cvičeniach je odporúčaná (nie je zakázaná)

Počas cvičení môže cvičiaci

  • individuálne pomáha pri počítači
  • globálne uvádza nejaké komentáre k riešeným úlohám
  • môže individuálne konzultovať domáce zadania


Sylabus prednášok na 3 semestre

1. semester 2. semester 3. semester
1 úvod, premenná, cyklus ... ...
2 reťazce, podprogramy ... ...
3 ... ... ...
4 ... ... ...
5 ... ... ...
6 ... ... ...
7 ... ... ...
8 ... ... ...
9 ... ... ...
10 ... ... ...
11 ... ... ...
12 ... ... ...


úvod, premenné

turtle, for-cyklus

moduly podprogramy, funkcie

typy, podmienky cykly, náhodné prechádzky

cykly, tabuľky, 2-rozmerné bitmapy

reťazce, algoritmy

zoznamy, postupnosti

súbory

slovníky

rekurzia

definovanie tried

---

úvod

analýza

základné dátové štruktúry: - zásobník, rad, spájané zoznamy

rekurzia - implementácia, labyrint, dynamické programovanie

triedenie, vyhľadávanie

stromy, stromové algoritmy, halda

vyhľadávacie stromy

grafy, algoritmy, najkratšia cesta

stare

  1. programátorské prostredie; tlačidlá, priradenie akcií; grafická plocha (Image); celočíselné premenné, náhodné čísla
  2. for-cyklus; podmienený príkaz; podmienený cyklus; vstupný riadok
  3. typ Integer, Boolean, Char, Real
  4. procedúry, parametre, funkcie, premenné parametre
  5. znakové reťazce; konzolová aplikácia; textové súbory; textová plocha
  6. typ interval; typ pole; pole ako parameter; polia rôznych typov
  7. udalosti; práca s myšou; komponent posuvná lišta; časovač
  8. bitmapové premenné; kachličkovanie, priesvitnosť, vlastné bitmapy, strihanie bitmáp
  9. typ záznam; príkaz with; vyhľadávanie; meranie rýchlosti
  10. pixely v bitmape; viacrozmerné polia; aplikácia LIFE
  11. grafické roboty; náhodné prechádzky; textové súbory; pole robotov
  12. nekonečná rekurzia; pravá rekurzia; binárne stromy; rekurzívne obrázky
  13. vymenovaný typ; typ množina; práca s klávesnicou; aplikácia skicár
  14. úvod do OOP; dedičnosť; konštruktor objektu; príklady tried
  15. programové jednotky; typ zásobník; dynamické polia; parameter otvorené pole
  16. programová jednotka RobotUnit; vlastnosti (property); konštruktory a deštruktory; odvodené triedy od TRobot
  17. výnimky a generické triedy; aritmetické výrazy; prepis rekurzie; dátová štruktúra rad
  18. Turingov stroj; návrh interprétra; niekoľko riešených úloh
  19. statické metódy; virtuálne metódy; kompatibilita tried; polymorfné pole
  20. virtuálne metódy triedy TRobot; pole robotov; pretypovanie inštancie; ukážkový projekt
  21. smerník; smerníková aritmetika; znakové reťazce ukončené #0; netypový smerník - typ Pointer
  22. dynamické premenné; netypový smerník - typ Pointer; reprezentácie rôznych typov; netypový formálny parameter
  23. trieda animovaný obrázok; animácia v jednej bitmape; pohyb animovaných obrázkov; plánovač
  24. binárne súbory; údajový prúd; kopírovanie medzi súbormi
  25. spájané zoznamy; základné operácie so zoznamami; zásobník a rad pomocou spájaného zoznamu
  26. vrchol zoznamu ako objekt; procedurálny typ; dvojsmerný a cyklický zoznam
  27. binárne stromy; základné algoritmy; procedurálny parameter v strome; zapuzdrenie triedy TStrom
  28. binárny vyhľadávací strom; aritmetické stromy; všeobecné stromy a zoznamy; lexikografické stromy
  29. algoritmy triedenia: Bubble Sort, Min Sort, Quick Sort
  30. reprezentácia grafu: pole množín susedov, tabuľka susedností; pole alebo zoznam spájaných zoznamov susedov, dynamické pole dynamických polí
  31. algoritmus do hĺbky; komponenty grafu; algoritmus do šírky; vzdialenosť a najkratšia cesta
  32. prehľadávanie s návratom
  33. prehľadávanie s návratom na grafoch