vyuka:psi:cviceni:uloha1-karel-zadani

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
vyuka:psi:cviceni:uloha1-karel-zadani [2014/03/21 19:28] kubrvyuka:psi:cviceni:uloha1-karel-zadani [2019/12/05 13:14] (current) – [Bodování] kubr
Line 139: Line 139:
  
 Data jsou binární povahy a obsahují fotografii okolí. Tuto fotografii je třeba uložit do souboru (v aktuálním adresáři) s názvem "fotoXXX.png", kde XXX je libovolné celé číslo od 0 do 999. Po skončení přenosu fotografie nebo po ukončení spojení se musí soubor s fotografií buď vymazat (chybný kontrolní součet, nekompletní přenos) nebo přejmenovat (je-li to nutné) na požadované jméno souboru. Data jsou binární povahy a obsahují fotografii okolí. Tuto fotografii je třeba uložit do souboru (v aktuálním adresáři) s názvem "fotoXXX.png", kde XXX je libovolné celé číslo od 0 do 999. Po skončení přenosu fotografie nebo po ukončení spojení se musí soubor s fotografií buď vymazat (chybný kontrolní součet, nekompletní přenos) nebo přejmenovat (je-li to nutné) na požadované jméno souboru.
 +
 +**Na Barykovi fotografii neukládejte.**
  
 Kontrolní součet následuje bezprostředně za koncem posílané fotografie. Jedná se o 4 byty ve formátu Big Endian (nejdříve se posílá nejvýznamnější byte slova). Kontrolní součet spočítáte jako součet všech jednotlivých bytů fotografie. Kontrolní součet následuje bezprostředně za koncem posílané fotografie. Jedná se o 4 byty ve formátu Big Endian (nejdříve se posílá nejvýznamnější byte slova). Kontrolní součet spočítáte jako součet všech jednotlivých bytů fotografie.
Line 149: Line 151:
 //Příklad krátké zprávy F pro demonstraci výpočtu kontrolního součtu:// //Příklad krátké zprávy F pro demonstraci výpočtu kontrolního součtu://
 <code> <code>
-FOTO 8 ABCDEFGH\x00\x00\x02\x24+FOTO 8 ABCDEFGH\x00\x00\x02\x24
 </code> </code>
 Kontrolní součet je 65+66+67+68+69+70+71+72=548 (hex 224), tj. v binárním zápise v kódování Big Endian: <00h> <00h> <02h> <24h>. V tomto příkladu je zápisem \xHH označen 1 byte s hexadecimální hodnotou HH. Kontrolní součet je 65+66+67+68+69+70+71+72=548 (hex 224), tj. v binárním zápise v kódování Big Endian: <00h> <00h> <02h> <24h>. V tomto příkladu je zápisem \xHH označen 1 byte s hexadecimální hodnotou HH.
Line 178: Line 180:
 Sekvence ''\r\n'' jsou zobrazeny jako konce řádků. Sekvence ''\r\n'' jsou zobrazeny jako konce řádků.
  
-//xsmitka@fray1:/home/zam/xsmitka>telnet baryk.fit.cvut.cz 3999\\+//xsmitka@fray1:/home/zam/xsmitka>telnet baryk-ng.fit.cvut.cz 3999\\
 Trying 147.32.232.173...\\ Trying 147.32.232.173...\\
 Connected to baryk.fit.cvut.cz.\\ Connected to baryk.fit.cvut.cz.\\
Line 226: Line 228:
  
 Uživatelské jméno: ''Robot'' //<libovolný řetězec neobsahující sekvenci \r\n>//\\ Uživatelské jméno: ''Robot'' //<libovolný řetězec neobsahující sekvenci \r\n>//\\
-Heslo: //<součet ascii hodnot jednotlivých bytů uživatelského jména zapsaných v dekadické formě>//+Heslo: //<součet hodnot jednotlivých bytů uživatelského jména zapsaných v dekadické formě>//
  
 Příklad: Robot345 / 674 Příklad: Robot345 / 674
Line 232: Line 234:
 ===== Požadavky ===== ===== Požadavky =====
     * programuje se pouze serverová část (nikoliv klienti, tedy roboti),     * programuje se pouze serverová část (nikoliv klienti, tedy roboti),
-    * server musí 100% fungovat s klientem na serveru baryk.fit.cvut.cz (viz níže),+    * server musí 100% fungovat s klientem na serveru baryk-ng.felk.cvut.cz (viz níže),
     * klient má možnost navázat se stejným serverem více spojení paralelně i postupně za sebou (bez restartu serveru),     * klient má možnost navázat se stejným serverem více spojení paralelně i postupně za sebou (bez restartu serveru),
     * server musí být stabilní a odolný proti neočekávaným vstupům,     * server musí být stabilní a odolný proti neočekávaným vstupům,
Line 248: Line 250:
  
 ===== ===== ===== =====
-    * každý student má **povinnost průběžně uploadovat aktuální stav svého zdrojového kódu** přes WWW rozhraní serveru baryk.fit.cvut.cz. Předpokládá se, že vždy po ukončení práce na programu nahrajete svůj kód na server Baryk. Také se předpokládá, že pokud k danému dni není záznam o uploadu Vašeho programu, tak jste na programu tento den nepracoval(a). Jinak řečeno, uploadováním svého programu vykazujete činnost (stejně jako v komerčním prostředí) a zároveň se chráníte před obviněním z nepoctivého jednání (přečtěte si obecné požadavky na úlohy na hlavní stránce předmětu).+    * každý student má **povinnost průběžně uploadovat aktuální stav svého zdrojového kódu** přes WWW rozhraní serveru baryk-ng.felk.cvut.cz. Předpokládá se, že vždy po ukončení práce na programu nahrajete svůj kód na server Baryk. Také se předpokládá, že pokud k danému dni není záznam o uploadu Vašeho programu, tak jste na programu tento den nepracoval(a). Jinak řečeno, uploadováním svého programu vykazujete činnost (stejně jako v komerčním prostředí) a zároveň se chráníte před obviněním z nepoctivého jednání (přečtěte si obecné požadavky na úlohy na hlavní stránce předmětu).
  
 ===== Implementační poznámky ===== ===== Implementační poznámky =====
Line 259: Line 261:
  
 ==== Testování klienta ==== ==== Testování klienta ====
-Referenční server pro první úlohu běží na adrese baryk.fit.cvut.cz na portu 3999. Funkčnost serveru lze ověřit zadáním příkazu:\\ +Referenční server pro první úlohu běží na adrese baryk-ng.felk.cvut.cz na portu 3999. Funkčnost serveru lze ověřit zadáním příkazu:\\ 
-''telnet baryk.fit.cvut.cz 3999''+''telnet baryk-ng.felk.cvut.cz 3999''
  
 ==== Testování serveru ==== ==== Testování serveru ====
Line 274: Line 276:
 |Java    |''javac source.java''  | |Java    |''javac source.java''  |
  
-Pokud není Váš počítač schován za NATem, lze v rámci sítě ČVUT využít i testování přes síť. Na webové stránce http://baryk.fit.cvut.cz/cgi-bin/robottcp zadáte IP adresu a port, na kterém běží Vaše implementace serveru. Po odeslání této informace bude Váš server otestován naším klientem. Výsledek bude zobrazen.+Pokud není Váš počítač schován za NATem, lze v rámci sítě ČVUT využít i testování přes síť. Na webové stránce http://baryk-ng.felk.cvut.cz/cgi-bin/robottcp zadáte IP adresu a port, na kterém běží Vaše implementace serveru. Po odeslání této informace bude Váš server otestován naším klientem. Výsledek bude zobrazen.
  
 K dispozici máte [[uloha1-faq|seznam nejčastějších chyb]], které mohou při testování nastat, a jejich popis. K dispozici máte [[uloha1-faq|seznam nejčastějších chyb]], které mohou při testování nastat, a jejich popis.
  
-===== Termín a způsob odevzdání ===== +===== Způsob odevzdání =====
-/*Úlohu je třeba odevzdat do 29.3./31.3./5.4./7.4. (podle termínu Vašeho cvičení, tj. cvičení, kam jste zapsáni podle rozvrhu).*/+
  
-Za každý týden prodlení je penalizace -0,5 bodu (jako přelom týdne se počítá konec cvičení). +Za každý týden prodlení je penalizace -0,5 bodu (jako přelom týdne se počítá konec cvičení). **Odevzdání je možné pouze do uvedeného deadline.** 
  
 Odevzdat lze pouze takovou úlohu, která splňuje minimální požadavky (za 0 bodů): Odevzdat lze pouze takovou úlohu, která splňuje minimální požadavky (za 0 bodů):
-  * je přeložitelná na serveru baryk.fit.cvut.cz+  * je přeložitelná na serveru baryk-ng.felk.cvut.cz
   * dokáže přijmout spojení od klienta a přijmout jeho uživatelské jméno)   * dokáže přijmout spojení od klienta a přijmout jeho uživatelské jméno)
  
Line 295: Line 296:
  
 ===== Bodování ===== ===== Bodování =====
-Za úlohu můžete dostat max. bodů. Penalizace: +Za úlohu můžete dostat max. 14 bodů. Penalizace: 
-  * server nezpracovává požadavky klienta paralelně: -3 +  * každý test, který neprojde: -3 
-  * chybně implementovaný protokol: -4 +  * server nezpracovává požadavky klienta paralelně: -5 
-  * nestabilita: -3 +  * chybně implementovaný protokol: -7 
-  * malá odolnost vůči nestandardním vstupům: -3 +  * nestabilita: -5 
-  * chyby v programu, které se neprojevily přímo: dle povahy -1 až -5 +  * malá odolnost vůči nestandardním vstupům: -5 
-  * nečistý zdrojový kód: -1 +  * chyby v programu, které se neprojevily přímo: dle povahy -1 až -8 
-  * zdrojový kód nebyl průběžně uploadován na server Baryk: -5+  * nečistý zdrojový kód: -2 
 +  * zdrojový kód nebyl průběžně uploadován na server Baryk: -
 +  * za každý týden zpoždění (nelze odevzdat po deadline): -1
  
  
  • vyuka/psi/cviceni/uloha1-karel-zadani.1395430132.txt.gz
  • Last modified: 2014/03/21 19:28
  • by kubr