2. Analýza a návrh řešení

2.4. Výpis pole

V předchozí proceduře PlnitJednotlive jsme volali funkce s textovými návraty obsahující vypsané hodnoty jednotlivých prvků vektoru. Pojďme si tyto funkce popsat. První funkci s názvem PoleJakoText využíváme pro výpis prvků do řádku, kde jednotlivé prvky jsou od sebe odděleny čárkami (kvůli lepší čitelnosti). Funkce přijímá dva parametry, kde první parametr představuje velikost pole a druhý představuje pole, které chceme vypsat. Funkce využívá následující lokální proměnné:

  • i - index prvku ve vektoru
  • vystup - výstupní textový řetězec obsahující prvky vektoru oddělené čárkou

Po nezbytné deklaraci proměnných a inicializaci výstupního textového řetězce vystup pomocí počátečního prvku vektoru (index 0) pomocí konverzní funkce ToString, je v následujícím cyklu s krokem (probíhá v pořadí od druhého prvku a do konečného prvku) do výstupního textového řetězce, před každý vypsaný prvek, přidána čárka kvůli vizuálnímu oddělení jednotlivých hodnot (proto jsme první prvek vypsali samostatně a ne v cyklu). Po průchodu všemi prvky tento výstupní textový řetězec přiřadíme návratu funkce PoleJakoText - viz Obrázek 1.  

Podprogram PoleJakoText - funkce pro navrácení textového řetězce obsahujícího hodnoty všech prvků vypsaných do řádku a oddělených čárkami

Obrázek 1: Podprogram PoleJakoText - funkce pro navrácení textového řetězce obsahujícího hodnoty všech prvků vypsaných do řádku a oddělených čárkami

Dalším podprogramem pro výpis prvků vektoru je funkce ZobrazitPole - viz Obrázek 2. Tato funkce navrací textový řetězec, kde jednotlivé prvky jsou uspořádány do sloupce, tzn. každý prvek je umístěn na samostatné řádce. Funkce přijímá dva parametry - první parametr představuje počet prvků vypisovaného vektoru, druhý parametr představuje pole, které má být vypsáno. Na rozdíl od předchozí funkce pro výpis jsou jednotlivé prvky procházeny od počátečního do koncového prvku (nepotřebujeme za prvky umísťovat čárky). Po výpisu hodnoty aktuálního prvku jsme v textovém řetězci za účelem vizuálního oddělení jednotlivých prvků použili vložení nového řádku pomocí vložení znaku z ASCII tabulky (řídící znak na pozici 13 v ASCII tabulce byl vložen pomocí funkce ToChar, která přijímá pozici znaku a navrací znak na určené pozici. Jedná se posunutí kurzoru na začátek řádku - anglicky "Carriage Return"). Výstupní text obsahující jednotlivé prvky umístěné pod sebou, je přiřazen návratu funkce ZobrazitPole.

 Podprogram ZobrazitPole - funkce pro navrácení textového řetězce obsahujícího hodnoty všech prvků vypsaných pod sebou do sloupce

Obrázek 2: Podprogram ZobrazitPole - funkce pro navrácení textového řetězce obsahujícího hodnoty všech prvků vypsaných pod sebou do sloupce