Programovanie (1) v C/C++
1-INF-127, ZS 2024/25
Zimný semester, pravidlá: Rozdiel medzi revíziami
Skočit na navigaci
Skočit na vyhledávání
Riadok 65: | Riadok 65: | ||
* Ak nájdeme prípady opisovania, všetci zúčastnení študenti získajú za príslušnú domácu úlohu '''0 bodov (aj študenti, ktorí dali spolužiakom odpísať'''). Opakované alebo obzvlášť závažné prípady opisovania alebo porušovania pravidiel predmetu budú podstúpené na riešenie disciplinárnej komisii fakulty. | * Ak nájdeme prípady opisovania, všetci zúčastnení študenti získajú za príslušnú domácu úlohu '''0 bodov (aj študenti, ktorí dali spolužiakom odpísať'''). Opakované alebo obzvlášť závažné prípady opisovania alebo porušovania pravidiel predmetu budú podstúpené na riešenie disciplinárnej komisii fakulty. | ||
* Za závažné porušenie pravidiel budeme považovať aj akýkoľvek pokus narušiť činnosť testovača riešení. | * Za závažné porušenie pravidiel budeme považovať aj akýkoľvek pokus narušiť činnosť testovača riešení. | ||
+ | |||
+ | ==Osobné stretnutia== | ||
+ | * Vyučujúci vás môžu vyzvať emailom, aby ste im prišli na stretnutie ohľadom príkladov, ktoré ste riešili a odovzdali mimo času cvičení (domáce úlohy, príklady z cvičení) | ||
+ | * Na tomto stretnutí im vysvetlíte, ako ste príklad riešili | ||
+ | * Ak ste príklad riešili vo dvojici, osobné stretnutie má každý zvlášť, každý by mal rozumieť celému riešeniu | ||
+ | * Stretnutia sa budú konať počas doplnkových cvičení alebo po dohode v inom čase | ||
+ | * Ak na stretnutie neprídete alebo nebudete vedieť svoj program vysvetliť, stratíne zaňho body | ||
==Možnosti pre pokročilých programátorov== | ==Možnosti pre pokročilých programátorov== |
Verzia zo dňa a času 13:18, 28. august 2018
Obsah
Známkovanie
- 25% známky je na základe príkladov z cvičení
- 15% známky je za domáce úlohy
- 30% známky je za písomky počas semestra
- 30% známky je za praktickú skúšku pri počítači
Pozor, body získavané za jednotlivé príklady nezodpovedajú priamo percentám záverečnej známky. Body za každú formu známkovania sa preváhujú tak, aby maximálny získateľný počet zodpovedal váham uvedených vyššie. Úlohy označené ako bonusové sa nerátajú do maximálneho počtu získateľných bodov v danej aktivite.
Stupnica
- Na úspešné absolvovanie predmetu je potrebné splniť nasledovné tri podmienky:
- Získať aspoň 50% bodov v celkovom hodnotení
- Získať aspoň 50% z celkového súčtu písomiek
- Na skúške úspešne odovzdať aspoň jeden z dvoch príkladov
- Ak niektorú z týchto troch podmienok nesplníte, dostávate známku Fx.
- V prípade úspešného absolvovania predmetu získate známku podľa bodov v celkovom hodnotení takto:
- A: 90% a viac, B:80...89%, C: 70...79%, D: 60...69%, E: 50...59%
Príklady z cvičení
- Na hlavnom cvičení bude zverejnených niekoľko príkadov. Príklady odovzdávate do automatického testovača. Ak úspešne prejdú všetkými testami, môžete za ne dostať body (podmienkou však je dodržať aj ďalšie pokyny v zadaní úlohy).
- Jeden príklad, označený ako rozcvička, bude mať termín odovzdania počas hlavného cvičenia, neskôr teda zaňho body nedostanete.
- Ďalšie príklady môžete odovzdávať až do začiatku ďalšieho cvičenia.
- Na doplnkovom cvičení môže byť zadaná ešte jedna rozcvička za malý počet bonusových bodov.
- Príklady z cvičení môžete robiť aj vo dvojicich. Príklad potom odovzdáva jeden člen dvojice a uvedie svojho partnera. Body dostanú obaja.
- V prípade problémov môžu vyučujúci prácu vo dvojicich regulovať.
- Jeden príklad vždy riešte s najviac jedným spolužiakom/spolužiačkou.
- Na riešení pracujte spolu, obaja mu musia do detailov rozumieť. Ideálne je byť v dvojici s niekým na podobnej úrovni programátorských skúseností.
- Ak v niektorom týždni nezískate žiadne body z príkladov z cvičení, dostanete za tento týždeň -5 bodov. Nakoľko každé cvičenia predstavujú materiál z dvoch prednášok, nie je rozumné celý týždeň preskočiť.
Domáce úlohy
- Domáce úlohy sa budú tiež odovzdávať na testovači, budú však opravované ručne.
- Plný počet bodov môžu dosť iba programy, ktoré prejdú všetkými testami, čiastočné body však môžete dosť aj za nedokončený program.
- Budeme kontrolovať správnosť celkovej myšlienky, správnosť implementácie ale body môžete stratiť aj za neprehľadný štýl.
- Domáce úlohy robte samostatne, nie v dvojiciach.
Písomné testy
- Počas semestra budú 3 písomné testy (na papieri) v rozsahu 60 minút.
- Pri teste nemôžete používať žiadne pomocné materiály (písomné ani elektronické) okrem povoleného ťaháku v rozsahu jedného listu formátu A4 s ľubovoľným obsahom na oboch stranách.
- Predbežné termíny (ešte potvrdíme):
- 1. test streda 17.10. 18:10 (opravná pravdepodobne 26.10.)
- 2. test streda 20.11. 18:10 (opravná cez skúškové)
- 3. test streda 19.12. 18:10 (opravná cez skúškové)
Skúška
- Na skúške budete riešiť 2 úlohy pri počítači v celkovom trvaní 2 hodiny.
- Na skúške nemôžete používať žiadne pomocné materiály okrem povoleného ťaháku v rozsahu jedného listu formátu A4 s ľubovoľným obsahom na oboch stranách. Nebude k dispozícii ani internet. Budete používať rovnaké programátorské prostredie ako na cvičeniach.
- Na skúške budú úlohy automaticky testované podobne ako domáce úlohy. Aspoň jedna úloha musí správne prejsť cez všetky testy, inak má študent z daného termínu skúšky známku Fx.
- Po skončení skúšky sa koná krátky ústny pohovor s vyučujúcimi, počas ktorého prediskutujeme programy, ktoré ste odovzdali a uzavrieme vašu známku.
- Bližšie informácie o skúške poskytneme koncom semestra.
Neprítomnosť a opravné termíny
- Domáce úlohy a príklady z cvičení je potrebné odovzdať do určeného termínu. Neskoršie odovzdané riešenia nebudú braté do úvahy ak nezískate výnimočné predĺženie termínu od vyučujúcich.
- Účasť na hlavných cvičeniach veľmi silne odporúčame a v prípade neprítomnosti stratíte body z rozcvičky. Väčšiu časť bodov môžete získať aj riešením príkladov doma.
- Ak zo závažných dôvodov (napr. zdravotných) nemôžete prísť na písomku, skúšku resp. načas odovzdať domácu úlohu či príklady z cvičení, kontaktujte vyučujúcich emailom. Treba tak spraviť čím skôr, nie až spätne cez skúškové. Môžeme požadovať potvrdenku od lekára.
- Každý písomný test má jeden opravný termín.
- Ak sa zúčastníte opravného termínu, strácate body z predchádzajúceho termínu, aj keby ste na opravnom získali menej bodov.
- Opravné termíny testov môžu byť aj cez skúškové.
- Opakovanie skúšky sa riadi študijným poriadkom fakulty. Máte nárok na dva opravné termíny (ale len v rámci termínov, ktoré sme určili).
- Ak po skúške pri počítači máte nárok na známu E alebo lepšiu, ale chceli by ste si známku ešte opraviť, musíte sa dohodnúť so skúšajúcimi pred zapísaním známky do indexu.
- Ak po skúške pri počítači ešte opravujete písomku, je potrebné prísť uzavrieť a zapísať známku v termíne určenom vyučujúcimi.
Opisovanie
- Máte povolené sa so spolužiakmi a ďalšími osobami rozprávať o domácich úlohách a stratégiách na ich riešenie. Kód, ktorý odovzdáte, musí však byť vaša samostatná práca. Je zakázané ukazovať svoj kód spolužiakom. Domáce úlohy môžu byť kontrolované softvérom na detekciu plagiarizmu.
- Podobne pri riešení príkladov z cvičení pracujte buď samostatne alebo v dvojici.
- Tiež je zakázané opisovať kód z literatúry alebo z internetu (s výnimkou webstránky predmetu). Pri práci môžete používať webstránky s popisom programovacieho jazyka, nesnažte sa však nájsť priamo riešenie zadaného príkladu.
- Počas testov a skúšok môžete používať iba povolené pomôcky a nesmiete komunikovať so žiadnymi osobami okrem vyučujúcich.
- Ak nájdeme prípady opisovania, všetci zúčastnení študenti získajú za príslušnú domácu úlohu 0 bodov (aj študenti, ktorí dali spolužiakom odpísať). Opakované alebo obzvlášť závažné prípady opisovania alebo porušovania pravidiel predmetu budú podstúpené na riešenie disciplinárnej komisii fakulty.
- Za závažné porušenie pravidiel budeme považovať aj akýkoľvek pokus narušiť činnosť testovača riešení.
Osobné stretnutia
- Vyučujúci vás môžu vyzvať emailom, aby ste im prišli na stretnutie ohľadom príkladov, ktoré ste riešili a odovzdali mimo času cvičení (domáce úlohy, príklady z cvičení)
- Na tomto stretnutí im vysvetlíte, ako ste príklad riešili
- Ak ste príklad riešili vo dvojici, osobné stretnutie má každý zvlášť, každý by mal rozumieť celému riešeniu
- Stretnutia sa budú konať počas doplnkových cvičení alebo po dohode v inom čase
- Ak na stretnutie neprídete alebo nebudete vedieť svoj program vysvetliť, stratíne zaňho body
Možnosti pre pokročilých programátorov
- Študenti, ktorí už ovládajú väčšiu časť učiva na tento semester, majú možnosť získať známku zmysluplnejším spôsobom, ako riešením ľahkých príkladov počas semestra.
Test pre pokročilých
- V druhom týždni semestra sa bude konať nepovinný test pre pokročilých.
- Ak na test prídete a napíšete ho na menej ako 50%, nezískate žiadne výhody (ako keby ste na test ani neprišli).
- V opačnom prípade za každých celých získaných 10% získavate 100% bodov z jedných cvičení (bez bonusov). Napr. ak ste získali 59% z testu, dostanete plný počet bodov z prvých 5 bodovaných cvičení. Tieto body nie je možné presúvať na iné termíny cvičení a z týchto uznaných cvičení už nemôžete získať ďalšie body.
- Navyše budete mať uznané aj niektoré semestrálne písomné testy nasledovne:
- 50-75% z testu: prvé dva písomné testy za plný počet bodov, ostatné píšete so spolužiakmi
- 75-90% z testu: tri písomné testy za plný počet bodov (určia vyučujúce určia, ktoré tri), jeden test píšete so spolužiakmi
- 90-100% z testu: zo všetkých 4 semestrálnych testov dostanete plný počet bodov
Domáce úlohy pre pokročilých
- Pokročilí programátori môžu namiesto bežných domácich úloh získať body za úlohy vyriešené na predmete Rýchlostné programovanie (1)
- Rýchlostné programovanie je určené na precvičenie programovania, algoritmov a hlavne ako príprava na programátorské súťaže. Úlohy na tomto predmete vyžadujú aj znalosti nepreberané na prednáškach z Programovania.
- Tie isté úlohy môžete použiť aj do hodnotenia Programovania aj Rýchlostného.
- Do hodnotenia Programovania (1) môžete započítať iba tie úlohy z Rýchlostného, ktoré vyriešite v jazyku C alebo C++ a počas semestra, t.j. najneskôr 22.12.
- Aby ste mohli namiesto bežných úloh robiť pokročilé, potrebujete povolenie od vyučujúcich. Všetci, čo napíšu test pre pokročilých aspoň na 50%, toto povolenie automaticky majú. Ostatní kontaktujte vyučujúce emailom a popíšte svoje programátorské skúsenosti.
- Ak chcete namiesto úloh použiť Rýchlostné (a máte povolenie), najneskôr 9.10. odovzdajte na našom testovači do špeciálnej úlohy Rýchlostné textový súbor, ktorý bude obsahovať vašu prezývku používanú na serveri Rýchlostného programovania.
- Potom najneskôr 22.12. odovzdajte novú verziu tohto súboru, ktorá bude obsahovať vašu prezývku a zoznam všetkých príkladov z Rýchlostného, ktoré chcete započítať ako DÚ na Programovaní. Musia to byť len príklady vyriešené jazyku C alebo C++. Pri každom príklade napíšte, koľko za neho máte bodov na Rýchlostnom (1 alebo 2 body).
- Body z Rýchlostného sa prepočítajú na body z DÚ nasledovne:
- Rýchlostné aspoň 6 bodov: 50% bodov z DÚ, t.j. 7.5% do celkového hodnotenia predmetu
- Rýchlostné aspoň 8 bodov: 100% bodov z DÚ, t.j. 15% do celkového hodnotenia predmetu
- Rýchlostné aspoň 12 bodov: 110% bodov z DÚ, t.j. 16.5% do celkového hodnotenia predmetu
- Rýchlostné aspoň 16 bodov: 120% bodov z DÚ, t.j. 18% do celkového hodnotenia predmetu
- Body z bežných DÚ a z Rýchlostného programovania nie je možné sčítať. Ak do 22.12. neodovzdáte zoznam príkladov, započítame vám body z odovzdaných domácich úloh. Ak odovzdáte neprázdny zoznam príkladov, použijeme ten.
Nepreberané črty jazykov C a C++
- Z jazykov C a C++ uvidíme len malú časť.
- Preberané črty týchto jazykov je potrebné ovládať, pre vlastnú potrebu si však môžete v literatúre doštudovať aj ďalšie užitočné príkazy, knižnice a konštrukty.
- Ak je v zadaní uvedené, aké prostriedky máte použiť, držte sa týchto pokynov.
- V opačnom prípade môžete použiť aj nepreberané črty. Aby ste sa vyhli problémom pri opravovaní, je vhodné ich doplniť vysvetľujúcim komentárom.
- Vždy používajte len štandardné súčasti jazykov C a C++ , nie špeciálne knižnice. (Výnimkou sú samozrejme knižnice poskytnuté vyučujúcimi).
- Vaše programy by mali fungovať v prostredí používanom v učebni bez zvláštnych nastavení kompilátora a pod.