# Zápočtový test 27.1.2010 10:00

<{ForumPost(poster="wladik", timestamp=2010-01-27 17:10:52)}>
Tak dneska bylo jako zadání Paralelní merge sort s GUI.  
Náznak zadání:  
 - pro nastavení gui se použije buď vvýchozí nastavení, nebo se dá upravit přepínači při startu aplikace  
 - hodnoty nastavené přes parametry se dají přes GUI změnit - pomocí vhodných prvků (TextBox, CheckBox...)  
 - pro každé vlákno se vytvoří textbox/label do kterého se zapíše jak dlouho dané vlákno třídilo, příp. i slévalo (zapisuje se z toho vytvořeného vlákna (Invoke) ) (pro měření bylo lepší použít System.Diagnostics.Stopwatch místo odečítání DateTime.Now, protože stopwatch dává výsledek v milisekundách)  
 - pokud se na příkazové řádce zadají neplatné kombinace přepínačů, tak zobrazit nápovědu a skončit.  
 - aplikace nesmí padat - ošetřit špatné vstupy zadané v GUI  
 - vstupní soubor s nesetříděnou posloupností se vejde do paměti  
 - pokud uživatel nezadá vstupní soubor, tak podle nastavení vygenerovat příslušnou posloupnost pro třídění  
   
přepínače

     -t x .. x = počet vláken (výchozí 1)
     -q .. použít v rámci vlákna quicksort místo mergesortu, který je výchozí
     -i file .. file = vstupní soubor s nesetřídenou posloupnosti
     -o file ..  file = výstupní soubor pro vypsání setříděné posloupnosti
     -m x .. x = maximální velikost čísla (výchozí maxInt)
     -l x ..  x= délka generované posloupnosti (výchozí 10000000)
     --bench .. speciální parametr, kde se použije výchozí nastavení a postupně se to pustí s 1 až 10 vlákny a vypiše jak dlouho každý běh trval
    

snad jsem to sepsal všechno
<{/ForumPost}>

