Lekce 1.04
Příkaz Writeln, matematické výpočty


předchozí lekce (1.03) obsah kurzu následující lekce (1.05)

V předchozí kapitole jste se naučili zadávat z příkazového okna příkazy umožňující vypsat do textového výstupního okna znaky. Nyní si ukážeme, jak vypisovat čísla a aritmetické výpočty.

S příkazem Writeln jste již měli možnost se krátce seznámit. Používá se na výpis hodnot. Požadovaná hodnota se přitom uváděla v závorce. Pokud se u příkazu Writeln uvede v závorkách pouze dvojice apostrofů, nebude nic vypsáno a další výstup do textového výstupního okna bude prováděn na novou řádku. Writeln je tedy příkaz který uvádí systému, že má něco vypsat. Uvedené něco se přitom uvádí v závorce jako parametr příkazu. Pokud požadujete vypsat libovolný text, musíte jej zadat mezi dvojicí uvozovek:


Writeln("Výsledek výpočtu: ")
Čísla , případně matematické výpočty s numerickou výslednou hodnotou je možné uvádět přímo, bez uvozovek:

Writeln(10)
Stačí tedy napsat jako parametr příkazu do závorek přímo požadované číslo. Číslo se vypíše se zarovnáním od levého kraje okna. Obdobným způsobem můžete zadat i jednoduchý matematický výraz, který se vypočítá a zobrazí se výsledek. Ve výrazu můžete samozřejmě použít i závorky pro definici postupu výpočtu:

Writeln((17-5)*3)
S možností výpisu nenumerických údajů, tedy znaků jste se již seznámili v předchozí lekci. Seskupení několika znaků se přitom nazývá řetězec a také tak již bude v následujícím textu uváděno. Pokud byste chtěli jedním příkazem Writeln vypsat najednou řetězec i znaky, musíte převést číslo na znaky a spojit je s řetězcem. K tomu se používá funkce CStr, se kterou se podrobněji seznámíme v jedné z následujících lekcí.

Writeln("Výsledek výpočtu je: "+CStr(10/3))
Příkaz Writeln provede po svém ukončení vždy přechod na novou řádku. Pokud však budete potřebovat, aby další výpis pokračoval na stejné řádce, můžete použít příkazu Write. Ten neprovádí ukončení řádku, následující výpis je zahájen od pozice ukončení příkazu Write. Možnosti a parametry příkazu Write jsou přitom totožné jako pro uváděný popis příkazu Writeln.

Výše uvedený popis použití příkazu Writeln se vám může zdát na první pohled složitý. Je však nutné jej přesně dodržet. Systém si hlídá důsledně jeho dodržování a v případě chyby odmítne příkaz vykonat. Přesná definice jakéhokoliv používaného jazyka se nazývá syntaktická pravidla. Pokud zadá uživatel chybný zápis, dojde k porušení syntaxe a odmítnutí systému k vykonání chybného zadání.

Pokud jste se dokonale seznámili s použitím příkazu Writeln, můžete ve spolupráci s manuálem k programu vyzkoušet některé funkce matematické knihovny. Dále uvedené příklady uvádějí na konci řádku za apostrofem komentář, který nemá na výsledek žádný vliv. Ve skutečnosti proto nemusíte apostrof včetně následujícího textu až do konce řádky uvádět.


Writeln(Abs(-55))      'absolutní hodnota čísla
Writeln(Cos(PI))       'kosinus Ludolfova čísla PI
Writeln(Max(3,10))     'maximální hodnota zadaných čísel
Writeln(Min(3,10))     'minimální hodnota zadaných čísel
Writeln(Rnd)           'náhodné číslo
Writeln(Round(12.82))  'zaokrouhluje číslo
Writeln(Sqr(16))       'vrací druhou odmocninu čísla
V některých případech může vadit, že výsledek matematického výpočtu je uveden včetně plného počtu desetinných míst podle typu matematického výpočtu. Pokud by to někdy vadilo, je možné použít funkci Round, která zaokrouhluje číslo s uvedením počtu desetinných míst, která mají být zachována. Dále uvedený příklad zaokrouhlí výpočet druhé odmocniny na dvě desetinná místa:

Writeln(Round(Sqr(5),2))
Pokud by vám při výpisu výsledků matematických výpočtů vadilo, že jsou čísla vypisována bez mezer vlevo a vždy na plnou délku desetinných míst, můžete použít funkci RealToStr jazyka KLONDAIK pro převod čísla na znaky (řetězec). Jako parametr funkce se přitom uvádí číslo pro převod, celkový počet znaků (včetně počátečních mezer a desetinné části) a počet desetinných míst. Vyzkoušejte si proto například následující výpočty a porovnejte zobrazené výsledky:

Writeln(RealToStr(10/3,6,0))
Writeln(RealToStr(10/3,6,1))
Writeln(RealToStr(10/3,6,2))
Writeln(RealToStr(10/3,6,3))
Jak vidíte, můžete použít příkaz Writeln jako docela chytrou kalkulačku. Zatím ale neznáte, jak by bylo možné uložit vypočtené hodnoty do 'paměti' naší kalkulačky k dalšímu použití. S tím se seznámíme až v některé z následujících lekcí. V příští lekci se seznámíte s dalším výstupním oknem, které se používá pro výstup a kreslení grafiky.
předchozí lekce (1.03) obsah kurzu následující lekce (1.05)

OZOGAN, 1 Máje 97, 460 01 Liberec
tel.,fax: (048) 52 28 338, e-mail: info@ozogan.cz