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
Last revisionBoth sides next revision
vyuka:psi:cviceni:uloha1-karel-zadani [2014/03/21 19:28] kubrvyuka:psi:cviceni:uloha1-karel-zadani [2019/11/19 17:06] – [Způsob odevzdá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. 13 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: -7
  
  
  • vyuka/psi/cviceni/uloha1-karel-zadani.txt
  • Last modified: 2019/12/05 13:14
  • by kubr