6. Výstup programu

Na následujících výstupech týkajících se programu DvourozmernePoleWPF budou zobrazeny jednotlivé výstupy aplikace pro různá nastavení atributů dvourozměrného pole (matice) a případy plnění tohoto pole včetně jednotlivých operací prováděných s prvky pole.  

Rozměr pole

Pokud uživatel nastavil některý z rozměrů pole mimo povolené hranice, je o této chybě informován pomocí dialogového okna a rozměr je nastaven na maximální rozměr, tj. na konstantu Max - viz Výstup programu 1. 

Výstup programu 1 - Kód 1 a 2 (viz kapitola 5 Výsledný kód): Překročení maximálního počtu řádků pole


Dolní a horní mez prvků

Pokud uživatel zadal dolní mez větší než horní mez, dolní mez bude nastavena na hodnotu horní meze - viz Výstup programu 2. V opačném případu, pokud uživatel zadal horní mez menší než dolní mez, bude horní mez nastavena no dolní mez.


Výstup programu 2 - Kód 1 a 2 (viz kapitola 5 Výsledný kód): Změna velikosti dolní meze, která je větší než horní mez


Plnění pole

Vzhledem k možnosti plnění pole různými způsoby jsou v následujících odstavcích zobrazeny různé varianty týkající se plnění dvourozměrného pole. Pole je vypsáno jak v objektu typu TextBox s titulkem Jako text (nebo výpis výsledku), tak i do objektu typu ListView s titulkem Mřížka.

Náhodná čísla

V následujícím výřezu výstupu programu vidíme variantu plnění dvourozměrného pole o velikosti 10 řádků a 10 sloupců náhodnými celými čísly - viz Výstup programu 3.  Dolní mez prvků pole je nastavena na hodnotu 1 a horní mez na hodnotu 100.


Výstup programu 3 - Kód 1 a 2 (viz kapitola 5 Výsledný kód): Plnění pole náhodnými čísly

Plnění jednotlivých prvků pole

Další možností plnění pole je plnění prvku v matici s určitým indexem řádku a sloupce pomocí hodnoty zadané uživatelem - viz Výstup programu 4. Prvky, u nichž není zadána hodnota uživatelem, jsou inicializovány počáteční hodnotou v závislosti na příslušném datovém typu (např. pro datový typ int je přednastavená hodnota 0). Na výřezu výstupu programu vidíme postupné plnění celočíselného dvourozměrného pole o 3 řádcích a 3 sloupcích (kde dolní mez hodnot prvků je rovna 1 a horní mez je rovna 9). Při dalším plnění prvku je automaticky přenastavena pozice prvku na pozici dalšího prvku. 


Výstup programu 4 - Kód 1 a 2 (viz kapitola 5 Výsledný kód): Ruční plnění pomocí specifikace pozice a hodnoty prvku

Pokud nebyla zadána hodnota prvku, uživateli je zobrazeno dialogové okno s popisem chyby - viz Výstup programu 5.


Výstup programu 5 - Kód 1 a 2 (viz kapitola 5 Výsledný kód): Nezadání hodnoty prvku při ručním plnění pole

Plnění nulami

Třetí možností plnění pole je všem prvkům přiřadit hodnotu 0. Následující výřez výstupu programu znázorňuje výpis matice o velikosti 10 x 10 prvků, kde jsou všechny prvky naplněny nulami - viz Výstup programu 6. 


Výstup programu 6 - Kód 1 a 2 (viz kapitola 5 Výsledný kód): Plnění všech prvků nulami


Minimum a maximum pole

Následující výstup programu aplikace ilustruje nalezení minima v poli o rozměrech 3 x 3 (řádky x sloupce). Ve výpisu jsou uvedeny indexy řádku a sloupce nalezeného minima. Pole bylo plněno jednotlivě uživatelem zadanými čísly v rozmezí celočíselných hodnot 1 ÷ 9 (viz Výstup programu 4 -  nadpis Plnění jednotlivých prvků pole) - viz Výstup programu 7.


Výstup programu 7 - Kód 1 a 2 (viz kapitola 5 Výsledný kód): Nalezené minimum v poli včetně jeho pozice v poli (index řádku a sloupce) 

Další výstup programu ilustruje nalezení maxima pole o rozměrech 3 x 3 (jedná se o stejné pole naplněné ručně viz Výstup programu 4 - nadpis Plnění jednotlivých prvků pole) a výpisu jeho hodnoty včetně pozice - viz Výstup programu 8. 


Výstup programu 8 - Kód 1 a 2 (viz kapitola 5 Výsledný kód): Nalezené maximum v poli včetně jeho pozice v poli (index řádku a sloupce) 

Průměr pole

Následující výstup programu aplikace ilustruje výpočet aritmetického průměru prvků pole o rozměrech 3 x 3, které byly zadány při plnění jednotlivých prvků pole (jedná se o stejné pole naplněné ručně viz Výstup programu 4 - nadpis Plnění jednotlivých prvků pole) - viz Výstup programu 9.


Výstup programu 9 - Kód 1 a 2 (viz kapitola 5 Výsledný kód): Výpočet aritmetického průměru ze všech prvků pole


Seřazení prvků pole

Následující výstup programu ilustruje vzestupné seřazení prvků v jednotlivých řádcích pole o rozměrech 3 x 3, které bylo zadáno pomocí plnění jednotlivých prvků pole (jedná se o stejné pole naplněné ručně viz Výstup programu 4 - nadpis Plnění jednotlivých prvků pole) - viz Výstup programu 10. 

Výstup programu 10 - Kód 1 a 2 (viz kapitola 5 Výsledný kód): Vzestupné seřazení všech prvků v jednotlivých řádcích pole


Transpozice prvků

Předposlední výstup programu ilustruje transpozici prvků pole podle hlavní diagonály již seřazených prvků ve všech řádcích matice (viz Výstup programu 10 - nadpis Seřazení prvků pole) - viz Výstup programu 11. 


Výstup programu 11 - Kód 1 a 2 (viz kapitola 5 Výsledný kód): Transpozice prvků pole podle hlavní diagonály

Poslední výstup programu ilustruje transpozici prvků pole podle vedlejší diagonály již transponovaných prvků pole (viz Výstup programu 11 - nadpis Transpozice prvků) podle hlavní diagonály - viz Výstup programu 12. 


Výstup programu 12 - Kód 1 a 2 (viz kapitola 5 Výsledný kód): Transpozice prvků pole podle vedlejší diagonály