Programovanie (2) v Jave
1-INF-166, letný semester 2023/24

Prednášky · Pravidlá · Softvér · Testovač
· Vyučujúcich predmetu možno kontaktovať mailom na adresách uvedených na hlavnej stránke. Hromadná mailová adresa zo zimného semestra v letnom semestri nefunguje.
· JavaFX: cesta k adresáru lib je v počítačových učebniach /usr/share/openjfx/lib.


Zimný semester, skúška: Rozdiel medzi revíziami

Z Programovanie
Skočit na navigaci Skočit na vyhledávání
(Jedna medziľahlá úprava od rovnakého používateľa nie je zobrazená.)
Riadok 1: Riadok 1:
 
Na tejto stránke pribudnú informácie ohľadom skúšok. Podrobnejšie informácie o skúške a rady k zvládnutiu prvého skúškového budú na prednáške v stredu 11.12. Odporúčame účasť na tejto prednáške.  
 
Na tejto stránke pribudnú informácie ohľadom skúšok. Podrobnejšie informácie o skúške a rady k zvládnutiu prvého skúškového budú na prednáške v stredu 11.12. Odporúčame účasť na tejto prednáške.  
 +
 +
Odporúčame tiež si preštudovať '''[[Zimný semester, pravidlá|pravidlá predmetu]]'''.
 +
 +
==Termíny, prihlasovanie==
  
 
Boli zverejnené predbežné termíny skúšok
 
Boli zverejnené predbežné termíny skúšok
Riadok 9: Riadok 13:
  
 
Prihlasovanie
 
Prihlasovanie
* Na termín skúšky sa prihlasujte v AIS/Votr od 27.11. 20:00.  
+
* Na termín skúšky sa prihlasujte v AIS/Votr <!-- od 27.11. 20:00. -->
 
* Na termín sa prihlasujte / odhlasujte najneskôr 24 hodín pred začiatkom termínu
 
* Na termín sa prihlasujte / odhlasujte najneskôr 24 hodín pred začiatkom termínu
 
* Prihlasujte sa čím skôr, termíny majú limitovanú kapacitu
 
* Prihlasujte sa čím skôr, termíny majú limitovanú kapacitu
 
* Na predtermín 20.12. sa treba prihlásiť aspoň týždeň dopredu, do piatku 13.12. 13:10. Ak na predtermín 20.12. nebude prihlásených aspoň 10 študentov, predtermín sa nebude konať
 
* Na predtermín 20.12. sa treba prihlásiť aspoň týždeň dopredu, do piatku 13.12. 13:10. Ak na predtermín 20.12. nebude prihlásených aspoň 10 študentov, predtermín sa nebude konať
 
* Opravnú písomku môžete na tomto predmete písať aj po skúške
 
* Opravnú písomku môžete na tomto predmete písať aj po skúške
 +
* Celkovo budú iba uvedené štyri termíny plus prípadný predtermín. Každý sa môže zúčastniť na najviac troch z nich, ďalšie termíny neplánujeme pridávať
  
 
'''Ak zistíte konflikt našej skúšky s hromadnou skúškou alebo písomkou iného predmetu, dajte nám vedieť čím skôr. Na poslednú chvíľu už nedokážeme nájsť riešenie.'''
 
'''Ak zistíte konflikt našej skúšky s hromadnou skúškou alebo písomkou iného predmetu, dajte nám vedieť čím skôr. Na poslednú chvíľu už nedokážeme nájsť riešenie.'''
 +
 +
<!--
 +
==Základné pokyny==
 +
 +
* Prineste si ISIC a index, písacie potreby na písanie pracovných poznámok, ťahák v rozsahu jedného listu A4. Žiadne ďalšie pomôcky nie sú povolené.
 +
* Stretávame sa vždy desať minút pred začiatkom skúšky pred počítačovou miestnosťou, kde sa dozviete pokyny a rozsadenie
 +
* '''Skúška''': 2 hodiny práca pri počítačoch
 +
** Za špeciálnych pravidiel môže byť čas '''predĺžený''' o 30 minút, viď pravidlá nižšie
 +
** Počas skúšky vám nebudeme pomáhať hľadať chyby vo vašom programe. Môžete sa však spýtať na nejasnosti v zadaní. Dajte nám tiež vedieť v prípade technických problémov alebo ak si myslíte, že v zadaní  / kostre / vstupoch je chyba.
 +
 +
==Po skúške==
 +
* Po skúške vyučujúci obodujú vaše programy. Výsledky nájdete na testovači, známky v AIS.
 +
* Ak máte výhrady k prideleným bodom, kontaktujte vyučujúcich najneskôr do týždňa po skúške.
 +
* Spravidla na druhý deň po skúške bude vyhradený čas, kedy môžete prísť si dať zapísať známku do indexu a tiež sa porozprávať o tom, čo ste mali v programe dobre alebo zle.
 +
* Na takéto stretnutie odporúčame prísť aj tým, ktorí skúšku nespravili. Môžeme vám poradiť, ako postupovať na opravnom termíne.
 +
* Ak chcete iba zapísať známku, index môžete poslať aj po spolužiakovi alebo prísť po inom termíne skúšky. Známky však zapisujeme iba v časoch na to určených, nie keď zrovna idete okolo. Známku si potrebujete dať do indexu zapísať najneskôr do konca skúškového.
 +
* Ak niekto skúšku ukončí v dostatočnom predstihu pred koncom 2-hodinovej doby skúšky a priebeh skúšky to umožní, skúšajúci môžu jeho programy obodovať už počas skúšky a priamo aj udeliť známku a zapísať ju do indexu.
 +
 +
==Technické detaily==
 +
* Skúška bude v Linuxe, rovnaké prostredie ako na cvičeniach
 +
* Odovzdávanie prostredníctvom špeciálnej verzie testovača
 +
* Okrem testovača nebude k dispozícii internet
 +
* Budete používať špeciálne skúškové konto, takže nebudete mať k dispozícii žiadne svoje súbory alebo nastavenia
 +
* Pri reštarte počítača sa stratia všetky súbory, používajte testovač ako zálohu (odovzdajte aj nedokončený program)
 +
* Môžete použiť Kate, valgrind, Netbeans, ale aj iné nástroje, ktoré bežia v Linuxe v učebniach a nepotrebujú internet. Prípadné problémy s použitím iného softvéru vám však nebudeme pomáhať riešiť
 +
* Nebudeme používať SVGdraw
 +
* Môžete používať aj črty C/C++, ktoré sme nebrali. Používajte len štandardné súčasti jazyka. Vaše programy by mali fungovať na testovači bez zvláštnych nastavení kompilátora a pod.
 +
** Odporúčame používať iba tie časti jazyka, s ktorými máte dostatočné skúsenosti. Príkazy, ktoré si nepamätáte, si dajte na ťahák.
 +
 +
==Opravné termíny==
 +
* 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ámku 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 píšete opravnú písomku, je potrebné prísť zapísať známku v termíne určenom vyučujúcimi.
 +
* Ak sa zo závažných dôvodov (napr. zdravotných, alebo konflikt s inou skúškou) nemôžete zúčastniť termínu skúšky alebo písomky, dajte o tom vyučujúcim vedieť čím skôr.
 +
 +
== Príklady ==
 +
 +
Na skúške budete riešiť dva príklady za rovnaký počet bodov
 +
 +
'''Prvý príklad'''
 +
* V prvom príklade budete mať za úlohu samostatne napísať celý program, ktorý rieši zadanú úlohu. Typicky bude treba načítať dáta, spracovať ich a vypísať výsledok.
 +
* V tomto príklade môžete použiť ľubovoľný postup.
 +
* Budú však zakázané polia pevných veľkostí. Polia alokujte dynamicky cez new, alebo použite štruktúry, ktoré menia veľkosť podľa potreby (napr. string, vector). Alokovanú pamäť odalokujte.
 +
* Predtým ako začnete programovať, si poriadne rozmyslite, aké dátové štruktúry (polia, matice, struct-y a pod.) chcete v programe použiť.
 +
 +
'''Druhý príklad'''
 +
* V druhom príklade dostanete kostru programu, pričom vašou úlohou bude doprogramovať niektoré funkcie.
 +
* V tomto príklade môžete mať v zadaní predpísaný spôsob, ako máte niektoré časti naprogramovať.
 +
* Budú sa vyžadovať aj zložitejšie časti učiva, ako napríklad zoznamy, stromy a rekurzia.
 +
 +
==Hodnotenie==
 +
Aby ste mali šancu úspešne ukončiť predmet, '''aspoň jeden z príkladov vám musí prejsť všetky testy na testovači'''
 +
* Túto podmienku nebudeme považovať za splnenú, ak váš program nerieši zadanú úlohu (t.j. jeho myšlienka nie je v zásade správna)
 +
* Podmienku však považujeme za splnenú, ak váš program prejde všetky vstupy, má v zásade správnu myšlienku, ale nedostane plný počet bodov napríklad kvôli chýbajúcemu uvoľneniu pamäte, statickým poliam, menšej chybe, ktorá sa neprejavila na daných vstupoch a pod.
 +
* Dobre si rozmyslite, s ktorým príkladom chcete začať a snažte sa ho dokončiť, kým nedostanete OK na testovači. Potom ho môžete ešte vylepšovať alebo sa snažiť vyriešiť aspoň časť príkladu, ktorý ste ešte neriešili.
 +
 +
'''Bodové hodnotenie'''
 +
* V prvom rade budeme hodnotiť správnosť myšlienky vášho programu. Predtým, ako začnete programovať, si dobre prečítajte zadanie a rozmyslite, ako budete úlohu riešiť.
 +
* Ďalej je veľmi dôležité, aby sa program dal skompilovať (v štandardnom prostredí) a aby správne fungoval na všetkých vstupoch spĺňajúcich podmienky v zadaní.
 +
* V druhej úlohe budeme jednotlivé funkcie hodnotiť zvlášť, takže môžete získať čiastočné body, ak ste niekoľko funkcií napísali správne.
 +
* Na hodnotenie môže mať menší vplyv aj úprava a štýl programu (komentáre, mená premenných, odsadzovanie, členenie dlhšieho programu na funkcie,...)
 +
* Na tejto skúške nezáleží na rýchlosti vášho programu. Radšej napíšte jednoduchý, prehľadný a hlavne správny pomalší program, než rýchlejší, ale zbytočne zložitý, či nesprávny.
 +
 +
==Predĺženie času==
 +
* Ak v riadnom čase 2 hodiny nemáte na testovači OK ani z jedného príkladu, zo skúšky by ste mali dostať Fx.
 +
* Dovolíme vám však predĺžiť čas skúšky o najviac 30 minút.
 +
* Ak zostanete na predĺženie, budeme vám rátať do výsledku '''body iba z jedného príkladu'''. Konkrétne z toho, za ktorý ste dostali OK na testovači (ak z oboch, tak z toho, za ktorý ste mali OK skôr)
 +
 +
==Ukážkové príklady na skúšku pri počítači==
 +
Niektoré ukážkové príklady na skúšku budú k dispozícii na [http://prog.dcs.fmph.uniba.sk/ testovači], môžete si ich v rámci tréningu vyriešiť a odovzdať. Pre realistickejší tréning si vždy prečítajte zadanie tesne predtým, ako príklad začnete riešiť, aby ste odhadli, koľko času vám príklad zaberie vrátane čítania zadania a rozmýšľania nad riešením.
 +
 +
==Špeciálne pravidlá pre predtermín==
 +
* Na predtermín sa v AIS da prihlásiť / odhlásiť najneskôr týždeň vopred, po tomto termíne iba pri závažných okolnostiach emailom B. Brejovej.
 +
* Ak sa zúčastňujete predtermínu, body za tréningové príklady môžete dostať iba ak ich vyriešite do 20.12. 23:55. (toto neplatí, ak po predtermíne ešte idete na opravný termín skúšky)
 +
* Výsledky oznámime najneskôr v pondelok 23.12., ale známky do indexov budeme zapisovať až v januári po prvom riadnom termíne. Prípadné reklamácie bodov alebo známok z predtermínu nám dajte vedieť najneskôr do 7.1.
 +
* Počas predtermínu spravidla nebudeme zapisovať známky do indexov (ani pri skoršom odovzdaní), vzhľadom na to, že nebude ukončené vyhodnotenie DÚ pre pokročilých a tréningových príkladov.
 +
-->

Verzia zo dňa a času 18:02, 4. december 2019

Na tejto stránke pribudnú informácie ohľadom skúšok. Podrobnejšie informácie o skúške a rady k zvládnutiu prvého skúškového budú na prednáške v stredu 11.12. Odporúčame účasť na tejto prednáške.

Odporúčame tiež si preštudovať pravidlá predmetu.

Termíny, prihlasovanie

Boli zverejnené predbežné termíny skúšok

  • piatok 20.12. 13:10 predtermín (koná sa len pri dostatočnom záujme, viď nižšie)
  • štvrtok 9.1. 13:00 riadny termín
  • štvrtok 23.1. 9:00 riadny termín alebo prvý opravný termín
  • piatok 31.1. 9:00 prvý opravný alebo druhý opravný termín
  • koncom skúškového ešte bude v prípade potreby druhý opravný termín

Prihlasovanie

  • Na termín skúšky sa prihlasujte v AIS/Votr
  • Na termín sa prihlasujte / odhlasujte najneskôr 24 hodín pred začiatkom termínu
  • Prihlasujte sa čím skôr, termíny majú limitovanú kapacitu
  • Na predtermín 20.12. sa treba prihlásiť aspoň týždeň dopredu, do piatku 13.12. 13:10. Ak na predtermín 20.12. nebude prihlásených aspoň 10 študentov, predtermín sa nebude konať
  • Opravnú písomku môžete na tomto predmete písať aj po skúške
  • Celkovo budú iba uvedené štyri termíny plus prípadný predtermín. Každý sa môže zúčastniť na najviac troch z nich, ďalšie termíny neplánujeme pridávať

Ak zistíte konflikt našej skúšky s hromadnou skúškou alebo písomkou iného predmetu, dajte nám vedieť čím skôr. Na poslednú chvíľu už nedokážeme nájsť riešenie.