Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revize Předchozí verze
Následující verze
Předchozí verze
public:pb071 [2017/02/23 20:06]
Petr Svenda [Založení odevzdávacího Git repozitáře]
public:pb071 [2018/02/24 19:10] (aktuální)
Řádek 1: Řádek 1:
  ​====== PB071: Principy nízkoúrovňového programování - Jaro 2017 ======  ​====== PB071: Principy nízkoúrovňového programování - Jaro 2017 ======
 +
 +<note warning>
 +**Stránky předmětu byly přesunuty**
 +
 +Oficiální web předmětu PB071 byl přesunut [[https://​www.fi.muni.cz/​pb071|zde]].
 +Informace na této stránce existují pouze pro zachování historie.
 +
 +**Tyto informace nemusí být aktuální a nelze je použít jako argument k opravě hodnocení
 +úkolů nebo ukončení předmětu.**
 +</​note>​
  
 ===== Rozcestník ===== ===== Rozcestník =====
Řádek 65: Řádek 75:
   * Na cvičeních se pracuje primárně ve vývojovém prostředí QT Creator s využitím překladače gcc. Součástí výuky je i používání debuggeru a dalších vývojových nástrojů - jejich aktivní použití na cvičeních bude vyžadováno. Studenti ovládající dobře jiné vývojové IDE jej mohou použít s tím, že odevdávané domácí úkoly musí jít kompilovat pomocí gcc na aise (viz [[public:​pb071#​odevzdavani|Odevzdávání]]). ​   * Na cvičeních se pracuje primárně ve vývojovém prostředí QT Creator s využitím překladače gcc. Součástí výuky je i používání debuggeru a dalších vývojových nástrojů - jejich aktivní použití na cvičeních bude vyžadováno. Studenti ovládající dobře jiné vývojové IDE jej mohou použít s tím, že odevdávané domácí úkoly musí jít kompilovat pomocí gcc na aise (viz [[public:​pb071#​odevzdavani|Odevzdávání]]). ​
  
 +=== Náhrada odpovědníku ===
  
 +  * pokud má student **omluvenou** neúčast na cvičení (na stud. odd.), může si odpovědník nahradit na některém z dalších cvičení nebo po domluvě s cvičícím 
 +  * odpovědník ze cvičení s **neomluvenou** neúčastí **nelze nahradit** 
 +      * student může nahradit celé cvičení (včetně odpovědníku) v jiné skupině, ale pouze ve **stejném týdnu**, ve kterém na cvičení chybí
 ===== Domácí úkoly ===== ===== Domácí úkoly =====
   * Během semestru bude zadáno 5 domácích úkolů + 1 bonusový.   * Během semestru bude zadáno 5 domácích úkolů + 1 bonusový.
Řádek 78: Řádek 91:
 Body za konkrétní domácí úkol se skládají z následujících částí: Body za konkrétní domácí úkol se skládají z následujících částí:
     * **Míra funkčnosti programu** po konci odevzdávání [0 ... 9 bodů] (počítá se dosažené maximum ze všech pokusů)  ​     * **Míra funkčnosti programu** po konci odevzdávání [0 ... 9 bodů] (počítá se dosažené maximum ze všech pokusů)  ​
-    * **Bonus za kompletně funkční program** po konci odevzdávání [0 ... 3 bodů]. Pokud je příklad ​napoprvé odevzdán ​jako plně funkční a dodržuje [[public:​pb071_konvencec|konvence o vhodném způsobu programování v jazyku C/C++]], tak student získává 3 body. Za každou opravu cvičícím s nalezenou chybou ​je z tohoto bonusu stržen 1 bod. Pokud není program po konci odevzdávání plně funkční, není tento bonus vůbec udělen.  +    * **Bonus za kompletně funkční program** po konci odevzdávání [0 ... 3 bodů]. Pokud je program ​napoprvé odevzdán plně funkční a dodržuje [[public:​pb071_konvencec|konvence o vhodném způsobu programování v jazyku C/C++]], tak student získává 3 body. Za každé další odevzdání naostro ​je z tohoto bonusu stržen 1 bod. Pokud není program ​ani po konci odevzdávání plně funkční, není tento bonus vůbec udělen.  
-    * Body za korektní vypracování **bonusového rozšíření příkladu** [0 ... 4 body]+      * **OD HW04**: Pokud student odevzdá plně funkční řešení **bez bonusu**, může odevzdat **jednu** verzi s bonusem bez stráty bonusu za kompletně funkční program
 +    * Body za korektní vypracování **bonusového rozšíření příkladu** [0 ... 4 body]. Tento bonus se uděluje pouze pokud je program plně funkční.
     * Body za **včasné odevzdání** alespoň 3 dny předem (72 hodin), ​ [0 ... 2 body]     * Body za **včasné odevzdání** alespoň 3 dny předem (72 hodin), ​ [0 ... 2 body]
       * za odevzdání //​nanečisto//​ s hodnocením 3 bodů se udělí 1 bonusový bod,       * za odevzdání //​nanečisto//​ s hodnocením 3 bodů se udělí 1 bonusový bod,
Řádek 97: Řádek 111:
 **Příklad 6:** Student odevzdá úkol napoprvé kompletně funkční program, pouze v bonusu za 2 body je chyba. Oprava se mu vyplatí, protože odevzdaním napodruhé ztrácí pouze jeden bod. Získává 9 + (3 - 1) + 2 = 13 bodů (z 14 maximálně možných). I kdyby bonus neopravil, tak získává 11 bodů, korektnost bonusu se do korektnosti celého příkladu nepočítá). **Příklad 6:** Student odevzdá úkol napoprvé kompletně funkční program, pouze v bonusu za 2 body je chyba. Oprava se mu vyplatí, protože odevzdaním napodruhé ztrácí pouze jeden bod. Získává 9 + (3 - 1) + 2 = 13 bodů (z 14 maximálně možných). I kdyby bonus neopravil, tak získává 11 bodů, korektnost bonusu se do korektnosti celého příkladu nepočítá).
  
-**Příklad 7:** Student odevzdá ​úkol kompletně funkční program bez bonusu (i na několikátý pokus). Může se pokusit dodatečně odevzdat jednou verzi s bonusem.+**Příklad 7:** Student odevzdá kompletně funkční program bez bonusu (i na několikátý pokus). Může se pokusit dodatečně odevzdat jednou verzi s bonusem. Pokud odevzdá bonus s chybou, může odevzdat znovu, ale přijde o jeden bonusový bod za počet odevzdání.
  
 Odevzdáním úkolu //včas// ze dále myslí alespoň 72 hodin před koncem odevzdávání,​ //pozdě// méňe než 72 hodin. Odevzdáním úkolu //včas// ze dále myslí alespoň 72 hodin před koncem odevzdávání,​ //pozdě// méňe než 72 hodin.
Řádek 114: Řádek 128:
   * Termín nejzazšího odevzdání úkolu je uveden vždy na stránce se zadáním úkolu.   * Termín nejzazšího odevzdání úkolu je uveden vždy na stránce se zadáním úkolu.
   * Každý program má v zadání uvedeno, jak se má jmenovat; tyto názvy je třeba dodržovat – vyučujícím to umožňuje kontrolu, včetně automatického odevzdání nanečisto. Speciálně si zkontrolujte velká a malá písmenka všech odevzdávaných souborů.   * Každý program má v zadání uvedeno, jak se má jmenovat; tyto názvy je třeba dodržovat – vyučujícím to umožňuje kontrolu, včetně automatického odevzdání nanečisto. Speciálně si zkontrolujte velká a malá písmenka všech odevzdávaných souborů.
-  * Odevzdáním se rozumí uložení zdrojového programu do SVN repozitáře a spuštění skriptu (viz dále), který informuje vás i cvičícího o výsledku automatické kontroly. Pouhé uložení programu do repozitáře nestačí – vyučující neví, zda je to již konečný tvar programu a nemůže dost dobře pořád kontrolovat,​ zda už byl program odevzdán. ​+  * Odevzdáním se rozumí uložení zdrojového programu do GIT repozitáře a spuštění skriptu (viz dále), který informuje vás i cvičícího o výsledku automatické kontroly. Pouhé uložení programu do repozitáře nestačí – vyučující neví, zda je to již konečný tvar programu a nemůže dost dobře pořád kontrolovat,​ zda už byl program odevzdán. ​
   * Zdrojový program nesmí při překladu výše uvedeným překladačem a parametry hlásit chyby ani varování. Pokud jsou při překladu nalezeny chyby nebo varování (používáme na překlad ''​-Werror''​),​ testy se vůbec nespouští a student přichází o jeden odevzdávací pokus.   * Zdrojový program nesmí při překladu výše uvedeným překladačem a parametry hlásit chyby ani varování. Pokud jsou při překladu nalezeny chyby nebo varování (používáme na překlad ''​-Werror''​),​ testy se vůbec nespouští a student přichází o jeden odevzdávací pokus.
   * Celý program musí být uložen v souborech se jmény výslovně požadovanými v zadání. Pokud je v zadání požadováno pouze vytvoření určité části programu, musíte pro ni sestavit svůj testovací program ''​main''​ pro vlastní odzkoušení,​ i když cvičící použije jiný testovací ''​main''​.   * Celý program musí být uložen v souborech se jmény výslovně požadovanými v zadání. Pokud je v zadání požadováno pouze vytvoření určité části programu, musíte pro ni sestavit svůj testovací program ''​main''​ pro vlastní odzkoušení,​ i když cvičící použije jiný testovací ''​main''​.
Řádek 141: Řádek 155:
     * //​Visibility//​ ponechte na //private// a toto nastavení **nikdy neměnte**, jinak lze takové nastavení považovat za opisování!     * //​Visibility//​ ponechte na //private// a toto nastavení **nikdy neměnte**, jinak lze takové nastavení považovat za opisování!
     * klikněte na //Create project//     * klikněte na //Create project//
-  * povolte přistup k projektu ​skupině ​''​pb071''​+  * povolte přistup k projektu ​uživateli ​''​kontr''​
     * klikněte na ozubené kolečko v pravém horním rohu a vyberte //Members//     * klikněte na ozubené kolečko v pravém horním rohu a vyberte //Members//
-    * pod //Set a group to share// vyberte skupinu ​''​pb071''​ a změnte //Max access level// na //​Reporter//​ +    * do pole //Search for members ​to update or invite// vpište ​''​kontr''​ a změnte ​právo z //Guest// (výchozí) ​na //​Reporter//​ 
-    * klikněte na //Share//+    * klikněte na //Add to project// 
 +    * **můžete** přidat právo svému cvičícímu a poradcům
     * **dalším osobám přístup nepřidávejte**,​ takové nastavení lze považovat za opisování!     * **dalším osobám přístup nepřidávejte**,​ takové nastavení lze považovat za opisování!
   * základy používání repozitáře viz [[https://​www.fi.muni.cz/​pb071/​tutorials/​git/​|Git Tutoriál]]   * základy používání repozitáře viz [[https://​www.fi.muni.cz/​pb071/​tutorials/​git/​|Git Tutoriál]]
QR Code
QR Code public:pb071 (generated for current page)