<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://maturitait4.iunas.cz/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="cs">
		<id>http://maturitait4.iunas.cz/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Capik</id>
		<title>Maturita 2012 - Příspěvky uživatele [cs]</title>
		<link rel="self" type="application/atom+xml" href="http://maturitait4.iunas.cz/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Capik"/>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Speci%C3%A1ln%C3%AD:P%C5%99%C3%ADsp%C4%9Bvky/Capik"/>
		<updated>2026-05-09T16:03:13Z</updated>
		<subtitle>Příspěvky uživatele</subtitle>
		<generator>MediaWiki 1.18.1</generator>

	<entry>
		<id>http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury</id>
		<title>Programové struktury</title>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury"/>
				<updated>2012-04-21T12:07:53Z</updated>
		
		<summary type="html">&lt;p&gt;Capik: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Strukturované programování (strukturovaný programovací jazyk) ==&lt;br /&gt;
* označuje v informatice programovací techniku, kdy se implementovaný algoritmus rozděluje na dílčí úlohy (tzn. na procedury či funkce, které se spojují v jeden celek). Na strukturované programování lze nahlížet jako na imperativní programování za využití vybraných řídicích. U strukturovaného programování se vyhýbáme řídicímu příkazu skoku.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Strukturované programování definuje, že se program může skládat pouze z následujících čtyř struktur:&lt;br /&gt;
** '''sekvence:''' provádí posloupnost příkazů jeden po druhém&lt;br /&gt;
** '''větvení:''' jeden nebo více příkazů je vykonán v závislosti na stavu programu (obvykle vyjadřováno klíčovými slovy if-else)&lt;br /&gt;
** '''cyklus:''' příkazy jsou prováděny do té doby, dokud program nedosáhne nějakého stavu (obvykle vyjadřováno klíčovými slovy while, for)&lt;br /&gt;
** '''podprogram:''' příkazy jsou shromažďovány do samostatného bloku, který má své jméno a definuje vstupy a výstupy. Tento blok (funkci nebo proceduru) lze z jiné části programu volat jeho jménem (identifikátorem). Funkce s návratovou hodnotou lze zařadit do výrazu.&lt;br /&gt;
* Nejznámějším důsledkem těchto zásad je snaha zabránit nebo v závislosti na programovacím jazyce alespoň omezit používání příkazu skoku. Programový kód nerespektující výše uvedené zásady se často hanlivě označuje jako „špagetový kód“.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sekvence ==&lt;br /&gt;
* Sekvence představuje posloupnost jednotlivých příkazů řazených v pořadí za sebou tak, jak mají být vykonány. Uzavřená sekvence se nazývá '''složený příkaz nebo blok.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Větvení ==&lt;br /&gt;
* Větvení umožňuje volit další postup řešení na základě splnění nebo nesplnění určité podmínky. Z obecného pohledu ale nemusí být vždy testována podmínka, neboť rozhodující pro větvení je až logická hodnota (true/false), která je výsledkem zmíněné podmínky. Větvit lze tedy i jen na základě hodnoty v logické proměnné. Větvení může být realizováno jako neúplný podmíněný příkaz, úplný podmíněný příkaz nebo jako přepínač.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''1) Neúplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:neuplny_podm_prikaz.jpg]] &lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S. Není-li podmínka splněna, nic se neprovádí a běh programu pokračuje dále.&lt;br /&gt;
&amp;lt;pre&amp;gt;int x;&lt;br /&gt;
if (x &amp;gt; 0) MessageBox.Show(&amp;quot;Kladné číslo&amp;quot;);&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''2) Úplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:uplny_podm_prikaz.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S1. Není-li podmínka splněna, provede se sekvence S2.&lt;br /&gt;
&amp;lt;pre&amp;gt;int x;&lt;br /&gt;
if (x &amp;gt; 0)&lt;br /&gt;
{&lt;br /&gt;
MessageBox.Show(&amp;quot;Je přirozené číslo&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
else&lt;br /&gt;
{&lt;br /&gt;
MessageBox.Show(&amp;quot;Není přirozené číslo&amp;quot;);&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Cyklus ==&lt;br /&gt;
* Slouží k vyjádření opakujících se operací. Počet opakování může být předem zadán, nebo je odvozen od splnění některé dané podmínky. Existují tak tři základní druhy cyklu: '''cyklus s výčtem hodnot, cyklus s podmínkou na počátku a cyklus s podmínkou na konci.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''1) Cyklus s výčtem hodnot (cyklus s předepsaným počtem opakování)'''&lt;br /&gt;
[[Soubor:cyklus_s_vyctem_hodnot.jpg]]&lt;br /&gt;
&lt;br /&gt;
Tento druh cyklu se provádí tolikrát, kolikrát je opakování cyklu předepsáno. Předpis je dán definicí dolní hodnoty p, kroku a horní hodnoty p (případně podmínky, která musí být po celou dobu vykonávání cyklu splněna).&lt;br /&gt;
&amp;lt;pre&amp;gt;for (int i = 0; i &amp;lt; 10; i++) x[i] = nahoda.next(0, 11);&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''2) Cyklus s podmínkou na začátku'''&lt;br /&gt;
[[Soubor:podm_zac.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Je-li podmínka splněna, provedou se příkazy sekvencí C a následuje návrat na začátek cyklu. Tato se opakuje, pokud stále platí podmínka P. Z uvedeného je zřejmé, že v sekvenci S musí být operace, která mění některou z hodnot logického výrazu podmínky P. Kdyby tomu tak nebylo, cyklus by nemohl skončit. Při dosažení neplatnosti podmínky P cyklus skončí.&lt;br /&gt;
&lt;br /&gt;
Je tedy zřejmé, že cyklus s podmínkou na začátku (někdy zvaný cyklus POKUD) nemusí proběhnout vůbec (je-li podmínka P nesplněna před vstupem do cyklu), nebo jednou, či n-krát. V případě chybného naprogramování cyklu může dojít k zacyklení, což nastane, pokud podmínka P platí stále.&lt;br /&gt;
&amp;lt;pre&amp;gt;int i=0;&lt;br /&gt;
while (i&amp;lt;10)&lt;br /&gt;
{&lt;br /&gt;
x[i] = nahoda.next(0, 11);&lt;br /&gt;
i++;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''3) Cyklus s podmínkou na konci'''&lt;br /&gt;
[[Soubor:podm_kon.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je provedena sekvence S. Poté je vyhodnocena podmínka, pokud platí, sekvence S se znovu neprovádí a běh programu pokračuje za cyklem. Není-li podmínka splněna opakuje se sekvence S a to tak dlouho, dokud podmínka stále neplatí. Z uvedeného je zřejmé, že v sekvenci S musí být operace, která mění některou z hodnot logického výrazu podmínky P. Kdyby tomu tak nebylo, cyklus by nemohl skončit.&lt;br /&gt;
&lt;br /&gt;
Tento cyklus se někdy nazývá cyklus DOKUD, čímž se myslí - dokud podmínka neplatí, opakuje se sekvence S. Tento cyklus proběhne vždy alespoň jednou. Četnost výskytu potřeby tohoto typu cyklu v programech je asi desetkrát menší než cyklu s podmínkou na začátku.&lt;br /&gt;
&amp;lt;pre&amp;gt;int i=0;&lt;br /&gt;
do&lt;br /&gt;
{&lt;br /&gt;
x[i] = nahoda.next(0, 11);&lt;br /&gt;
i++;&lt;br /&gt;
} while (i&amp;lt;10)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Podprogram ==&lt;br /&gt;
[[Soubor:podprogram.jpg]]&lt;br /&gt;
&lt;br /&gt;
* Podprogramy představují ucelené, relativně samostatné části programu, napsané v tomto programu jenom jednou, ale s možností využít je vícekrát v různých místech tohoto programu. Podprogram musí mít své jméno (identifikátor), jehož prostřednictvím se na něj v programu odvoláváme a seznam formálních parametrů, které slouží po jejich nahrazení skutečnými parametry při odvolání se na podprogram.&lt;br /&gt;
&lt;br /&gt;
*Podprogram se může vyskytovat v podobě funkce bez návratové hodnoty nebo s návratovou hodnotou. Funkci s návratovou hodnotou můžeme zahrnout do výrazu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Parametry předávané do podprogramu'''&lt;br /&gt;
*Parametr je označení pro vstupní data příslušné funkce. Existují dva způsoby předávání parametrů funkci.&lt;br /&gt;
&lt;br /&gt;
**Při '''předávání hodnotou''' (call-by-value) se těsně před zpracováním těla funkce předávaný parametr vyčíslí a výsledek se zkopíruje do lokální proměnné uvnitř volané funkce. Jakékoli změny parametru uvnitř volané funkce nemají vliv na volající funkci, neboť se pracuje s lokální kopií hodnoty původního parametru. Předávání hodnotou tedy lze používat pouze pro vstupní parametry. Tento způsob je typický např. při vytváření aritmetických funkcí.&lt;br /&gt;
&lt;br /&gt;
**Při '''předávání odkazem''' (call-by-reference) se formální parametr uvnitř volané funkce bere jen jako jiné označení (alias) pro proměnnou předanou jako skutečný parametr, tzn. ve volané funkci se pracuje přímo s předávanou proměnnou, nevytváří se tedy kopie hodnoty (což zvláště u strukturovaných proměnných znamená zpravidla úsporu času i paměti). Volaná funkce změnou parametru ovlivňuje i původní volající funkci, takže předávání odkazem lze používat pro výstupní či vstupně-výstupní parametry. Nevýhodou však je, že parametrem může být jen proměnná a nikoli výsledek obecného výrazu. Předávání odkazem se obvykle implementuje pomocí ukazatele na předávanou proměnnou.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*'''1) Předávání parametrů hodnotou v jazyce C#'''&lt;br /&gt;
&amp;lt;pre&amp;gt;void Zamen(int a, int b) //zameni hodnoty v promennych&lt;br /&gt;
{&lt;br /&gt;
int pom;&lt;br /&gt;
pom = a;&lt;br /&gt;
a = b;&lt;br /&gt;
b = pom;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
Tuto funkci budeme volat z volající funkce následně:&lt;br /&gt;
&amp;lt;pre&amp;gt;static void Main(string[] args)&lt;br /&gt;
{&lt;br /&gt;
int promennaA = 10, promennaB = 20;&lt;br /&gt;
Zamen(promennaA, promennaB);&lt;br /&gt;
return 0;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
Při předávání parametrů funkci hodnotou zůstanou původní proměnné (promennaA a promennaB) po návratu zpět do volající funkce beze změny.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*'''2) Předávání parametrů odkazem v jazyce C#'''&lt;br /&gt;
&amp;lt;pre&amp;gt;void Zamen(ref int a, ref int b) //zameni hodnoty v promennych&lt;br /&gt;
{&lt;br /&gt;
int pom = a;&lt;br /&gt;
a = b;&lt;br /&gt;
b = pom;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
Tuto funkci budeme volat z volající funkce následně:&lt;br /&gt;
&amp;lt;pre&amp;gt;static void Main(string[] args)&lt;br /&gt;
{&lt;br /&gt;
int promennaA = 10, promennaB = 20;&lt;br /&gt;
Zamen(ref promennaA, ref promennaB);&lt;br /&gt;
return 0;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
Po předání parametrů funkci tímto způsobem budou po návratu zpět do volající funkce v našich proměnných (promennaA a promennaB) hodnoty 20 a 10.&lt;/div&gt;</summary>
		<author><name>Capik</name></author>	</entry>

	<entry>
		<id>http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury</id>
		<title>Programové struktury</title>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury"/>
				<updated>2012-04-21T12:06:06Z</updated>
		
		<summary type="html">&lt;p&gt;Capik: /* Podprogram */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* způsob zápisu algoritmu pomocí VD &lt;br /&gt;
* událostní funkce &lt;br /&gt;
* obecná funkce, objektová metoda, předávání parametrů funkci, návratová hodnota &lt;br /&gt;
* binární větvení &lt;br /&gt;
* cyklus (podmíněný, s definovaným počtem opakování) &lt;br /&gt;
* objekt &lt;br /&gt;
* příklady programů ve vybraném jazyce&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Strukturované programování (strukturovaný programovací jazyk) ==&lt;br /&gt;
* označuje v informatice programovací techniku, kdy se implementovaný algoritmus rozděluje na dílčí úlohy (tzn. na procedury či funkce, které se spojují v jeden celek). Na strukturované programování lze nahlížet jako na imperativní programování za využití vybraných řídicích. U strukturovaného programování se vyhýbáme řídicímu příkazu skoku.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Strukturované programování definuje, že se program může skládat pouze z následujících čtyř struktur:&lt;br /&gt;
** '''sekvence:''' provádí posloupnost příkazů jeden po druhém&lt;br /&gt;
** '''větvení:''' jeden nebo více příkazů je vykonán v závislosti na stavu programu (obvykle vyjadřováno klíčovými slovy if-else)&lt;br /&gt;
** '''cyklus:''' příkazy jsou prováděny do té doby, dokud program nedosáhne nějakého stavu (obvykle vyjadřováno klíčovými slovy while, for)&lt;br /&gt;
** '''podprogram:''' příkazy jsou shromažďovány do samostatného bloku, který má své jméno a definuje vstupy a výstupy. Tento blok (funkci nebo proceduru) lze z jiné části programu volat jeho jménem (identifikátorem). Funkce s návratovou hodnotou lze zařadit do výrazu.&lt;br /&gt;
* Nejznámějším důsledkem těchto zásad je snaha zabránit nebo v závislosti na programovacím jazyce alespoň omezit používání příkazu skoku. Programový kód nerespektující výše uvedené zásady se často hanlivě označuje jako „špagetový kód“.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sekvence ==&lt;br /&gt;
* Sekvence představuje posloupnost jednotlivých příkazů řazených v pořadí za sebou tak, jak mají být vykonány. Uzavřená sekvence se nazývá '''složený příkaz nebo blok.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Větvení ==&lt;br /&gt;
* Větvení umožňuje volit další postup řešení na základě splnění nebo nesplnění určité podmínky. Z obecného pohledu ale nemusí být vždy testována podmínka, neboť rozhodující pro větvení je až logická hodnota (true/false), která je výsledkem zmíněné podmínky. Větvit lze tedy i jen na základě hodnoty v logické proměnné. Větvení může být realizováno jako neúplný podmíněný příkaz, úplný podmíněný příkaz nebo jako přepínač.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''1) Neúplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:neuplny_podm_prikaz.jpg]] &lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S. Není-li podmínka splněna, nic se neprovádí a běh programu pokračuje dále.&lt;br /&gt;
&amp;lt;pre&amp;gt;int x;&lt;br /&gt;
if (x &amp;gt; 0) MessageBox.Show(&amp;quot;Kladné číslo&amp;quot;);&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''2) Úplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:uplny_podm_prikaz.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S1. Není-li podmínka splněna, provede se sekvence S2.&lt;br /&gt;
&amp;lt;pre&amp;gt;int x;&lt;br /&gt;
if (x &amp;gt; 0)&lt;br /&gt;
{&lt;br /&gt;
MessageBox.Show(&amp;quot;Je přirozené číslo&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
else&lt;br /&gt;
{&lt;br /&gt;
MessageBox.Show(&amp;quot;Není přirozené číslo&amp;quot;);&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Cyklus ==&lt;br /&gt;
* Slouží k vyjádření opakujících se operací. Počet opakování může být předem zadán, nebo je odvozen od splnění některé dané podmínky. Existují tak tři základní druhy cyklu: '''cyklus s výčtem hodnot, cyklus s podmínkou na počátku a cyklus s podmínkou na konci.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''1) Cyklus s výčtem hodnot (cyklus s předepsaným počtem opakování)'''&lt;br /&gt;
[[Soubor:cyklus_s_vyctem_hodnot.jpg]]&lt;br /&gt;
&lt;br /&gt;
Tento druh cyklu se provádí tolikrát, kolikrát je opakování cyklu předepsáno. Předpis je dán definicí dolní hodnoty p, kroku a horní hodnoty p (případně podmínky, která musí být po celou dobu vykonávání cyklu splněna).&lt;br /&gt;
&amp;lt;pre&amp;gt;for (int i = 0; i &amp;lt; 10; i++) x[i] = nahoda.next(0, 11);&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''2) Cyklus s podmínkou na začátku'''&lt;br /&gt;
[[Soubor:podm_zac.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Je-li podmínka splněna, provedou se příkazy sekvencí C a následuje návrat na začátek cyklu. Tato se opakuje, pokud stále platí podmínka P. Z uvedeného je zřejmé, že v sekvenci S musí být operace, která mění některou z hodnot logického výrazu podmínky P. Kdyby tomu tak nebylo, cyklus by nemohl skončit. Při dosažení neplatnosti podmínky P cyklus skončí.&lt;br /&gt;
&lt;br /&gt;
Je tedy zřejmé, že cyklus s podmínkou na začátku (někdy zvaný cyklus POKUD) nemusí proběhnout vůbec (je-li podmínka P nesplněna před vstupem do cyklu), nebo jednou, či n-krát. V případě chybného naprogramování cyklu může dojít k zacyklení, což nastane, pokud podmínka P platí stále.&lt;br /&gt;
&amp;lt;pre&amp;gt;int i=0;&lt;br /&gt;
while (i&amp;lt;10)&lt;br /&gt;
{&lt;br /&gt;
x[i] = nahoda.next(0, 11);&lt;br /&gt;
i++;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''3) Cyklus s podmínkou na konci'''&lt;br /&gt;
[[Soubor:podm_kon.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je provedena sekvence S. Poté je vyhodnocena podmínka, pokud platí, sekvence S se znovu neprovádí a běh programu pokračuje za cyklem. Není-li podmínka splněna opakuje se sekvence S a to tak dlouho, dokud podmínka stále neplatí. Z uvedeného je zřejmé, že v sekvenci S musí být operace, která mění některou z hodnot logického výrazu podmínky P. Kdyby tomu tak nebylo, cyklus by nemohl skončit.&lt;br /&gt;
&lt;br /&gt;
Tento cyklus se někdy nazývá cyklus DOKUD, čímž se myslí - dokud podmínka neplatí, opakuje se sekvence S. Tento cyklus proběhne vždy alespoň jednou. Četnost výskytu potřeby tohoto typu cyklu v programech je asi desetkrát menší než cyklu s podmínkou na začátku.&lt;br /&gt;
&amp;lt;pre&amp;gt;int i=0;&lt;br /&gt;
do&lt;br /&gt;
{&lt;br /&gt;
x[i] = nahoda.next(0, 11);&lt;br /&gt;
i++;&lt;br /&gt;
} while (i&amp;lt;10)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Podprogram ==&lt;br /&gt;
[[Soubor:podprogram.jpg]]&lt;br /&gt;
&lt;br /&gt;
* Podprogramy představují ucelené, relativně samostatné části programu, napsané v tomto programu jenom jednou, ale s možností využít je vícekrát v různých místech tohoto programu. Podprogram musí mít své jméno (identifikátor), jehož prostřednictvím se na něj v programu odvoláváme a seznam formálních parametrů, které slouží po jejich nahrazení skutečnými parametry při odvolání se na podprogram.&lt;br /&gt;
&lt;br /&gt;
*Podprogram se může vyskytovat v podobě funkce bez návratové hodnoty nebo s návratovou hodnotou. Funkci s návratovou hodnotou můžeme zahrnout do výrazu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Parametry předávané do podprogramu'''&lt;br /&gt;
*Parametr je označení pro vstupní data příslušné funkce. Existují dva způsoby předávání parametrů funkci.&lt;br /&gt;
&lt;br /&gt;
**Při '''předávání hodnotou''' (call-by-value) se těsně před zpracováním těla funkce předávaný parametr vyčíslí a výsledek se zkopíruje do lokální proměnné uvnitř volané funkce. Jakékoli změny parametru uvnitř volané funkce nemají vliv na volající funkci, neboť se pracuje s lokální kopií hodnoty původního parametru. Předávání hodnotou tedy lze používat pouze pro vstupní parametry. Tento způsob je typický např. při vytváření aritmetických funkcí.&lt;br /&gt;
&lt;br /&gt;
**Při '''předávání odkazem''' (call-by-reference) se formální parametr uvnitř volané funkce bere jen jako jiné označení (alias) pro proměnnou předanou jako skutečný parametr, tzn. ve volané funkci se pracuje přímo s předávanou proměnnou, nevytváří se tedy kopie hodnoty (což zvláště u strukturovaných proměnných znamená zpravidla úsporu času i paměti). Volaná funkce změnou parametru ovlivňuje i původní volající funkci, takže předávání odkazem lze používat pro výstupní či vstupně-výstupní parametry. Nevýhodou však je, že parametrem může být jen proměnná a nikoli výsledek obecného výrazu. Předávání odkazem se obvykle implementuje pomocí ukazatele na předávanou proměnnou.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*'''1) Předávání parametrů hodnotou v jazyce C#'''&lt;br /&gt;
&amp;lt;pre&amp;gt;void Zamen(int a, int b) //zameni hodnoty v promennych&lt;br /&gt;
{&lt;br /&gt;
int pom;&lt;br /&gt;
pom = a;&lt;br /&gt;
a = b;&lt;br /&gt;
b = pom;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
Tuto funkci budeme volat z volající funkce následně:&lt;br /&gt;
&amp;lt;pre&amp;gt;static void Main(string[] args)&lt;br /&gt;
{&lt;br /&gt;
int promennaA = 10, promennaB = 20;&lt;br /&gt;
Zamen(promennaA, promennaB);&lt;br /&gt;
return 0;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
Při předávání parametrů funkci hodnotou zůstanou původní proměnné (promennaA a promennaB) po návratu zpět do volající funkce beze změny.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*'''2) Předávání parametrů odkazem v jazyce C#'''&lt;br /&gt;
&amp;lt;pre&amp;gt;void Zamen(ref int a, ref int b) //zameni hodnoty v promennych&lt;br /&gt;
{&lt;br /&gt;
int pom = a;&lt;br /&gt;
a = b;&lt;br /&gt;
b = pom;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
Tuto funkci budeme volat z volající funkce následně:&lt;br /&gt;
&amp;lt;pre&amp;gt;static void Main(string[] args)&lt;br /&gt;
{&lt;br /&gt;
int promennaA = 10, promennaB = 20;&lt;br /&gt;
Zamen(ref promennaA, ref promennaB);&lt;br /&gt;
return 0;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
Po předání parametrů funkci tímto způsobem budou po návratu zpět do volající funkce v našich proměnných (promennaA a promennaB) hodnoty 20 a 10.&lt;/div&gt;</summary>
		<author><name>Capik</name></author>	</entry>

	<entry>
		<id>http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury</id>
		<title>Programové struktury</title>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury"/>
				<updated>2012-04-21T12:04:24Z</updated>
		
		<summary type="html">&lt;p&gt;Capik: /* Větvení */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* způsob zápisu algoritmu pomocí VD &lt;br /&gt;
* událostní funkce &lt;br /&gt;
* obecná funkce, objektová metoda, předávání parametrů funkci, návratová hodnota &lt;br /&gt;
* binární větvení &lt;br /&gt;
* cyklus (podmíněný, s definovaným počtem opakování) &lt;br /&gt;
* objekt &lt;br /&gt;
* příklady programů ve vybraném jazyce&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Strukturované programování (strukturovaný programovací jazyk) ==&lt;br /&gt;
* označuje v informatice programovací techniku, kdy se implementovaný algoritmus rozděluje na dílčí úlohy (tzn. na procedury či funkce, které se spojují v jeden celek). Na strukturované programování lze nahlížet jako na imperativní programování za využití vybraných řídicích. U strukturovaného programování se vyhýbáme řídicímu příkazu skoku.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Strukturované programování definuje, že se program může skládat pouze z následujících čtyř struktur:&lt;br /&gt;
** '''sekvence:''' provádí posloupnost příkazů jeden po druhém&lt;br /&gt;
** '''větvení:''' jeden nebo více příkazů je vykonán v závislosti na stavu programu (obvykle vyjadřováno klíčovými slovy if-else)&lt;br /&gt;
** '''cyklus:''' příkazy jsou prováděny do té doby, dokud program nedosáhne nějakého stavu (obvykle vyjadřováno klíčovými slovy while, for)&lt;br /&gt;
** '''podprogram:''' příkazy jsou shromažďovány do samostatného bloku, který má své jméno a definuje vstupy a výstupy. Tento blok (funkci nebo proceduru) lze z jiné části programu volat jeho jménem (identifikátorem). Funkce s návratovou hodnotou lze zařadit do výrazu.&lt;br /&gt;
* Nejznámějším důsledkem těchto zásad je snaha zabránit nebo v závislosti na programovacím jazyce alespoň omezit používání příkazu skoku. Programový kód nerespektující výše uvedené zásady se často hanlivě označuje jako „špagetový kód“.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sekvence ==&lt;br /&gt;
* Sekvence představuje posloupnost jednotlivých příkazů řazených v pořadí za sebou tak, jak mají být vykonány. Uzavřená sekvence se nazývá '''složený příkaz nebo blok.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Větvení ==&lt;br /&gt;
* Větvení umožňuje volit další postup řešení na základě splnění nebo nesplnění určité podmínky. Z obecného pohledu ale nemusí být vždy testována podmínka, neboť rozhodující pro větvení je až logická hodnota (true/false), která je výsledkem zmíněné podmínky. Větvit lze tedy i jen na základě hodnoty v logické proměnné. Větvení může být realizováno jako neúplný podmíněný příkaz, úplný podmíněný příkaz nebo jako přepínač.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''1) Neúplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:neuplny_podm_prikaz.jpg]] &lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S. Není-li podmínka splněna, nic se neprovádí a běh programu pokračuje dále.&lt;br /&gt;
&amp;lt;pre&amp;gt;int x;&lt;br /&gt;
if (x &amp;gt; 0) MessageBox.Show(&amp;quot;Kladné číslo&amp;quot;);&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''2) Úplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:uplny_podm_prikaz.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S1. Není-li podmínka splněna, provede se sekvence S2.&lt;br /&gt;
&amp;lt;pre&amp;gt;int x;&lt;br /&gt;
if (x &amp;gt; 0)&lt;br /&gt;
{&lt;br /&gt;
MessageBox.Show(&amp;quot;Je přirozené číslo&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
else&lt;br /&gt;
{&lt;br /&gt;
MessageBox.Show(&amp;quot;Není přirozené číslo&amp;quot;);&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Cyklus ==&lt;br /&gt;
* Slouží k vyjádření opakujících se operací. Počet opakování může být předem zadán, nebo je odvozen od splnění některé dané podmínky. Existují tak tři základní druhy cyklu: '''cyklus s výčtem hodnot, cyklus s podmínkou na počátku a cyklus s podmínkou na konci.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''1) Cyklus s výčtem hodnot (cyklus s předepsaným počtem opakování)'''&lt;br /&gt;
[[Soubor:cyklus_s_vyctem_hodnot.jpg]]&lt;br /&gt;
&lt;br /&gt;
Tento druh cyklu se provádí tolikrát, kolikrát je opakování cyklu předepsáno. Předpis je dán definicí dolní hodnoty p, kroku a horní hodnoty p (případně podmínky, která musí být po celou dobu vykonávání cyklu splněna).&lt;br /&gt;
&amp;lt;pre&amp;gt;for (int i = 0; i &amp;lt; 10; i++) x[i] = nahoda.next(0, 11);&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''2) Cyklus s podmínkou na začátku'''&lt;br /&gt;
[[Soubor:podm_zac.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Je-li podmínka splněna, provedou se příkazy sekvencí C a následuje návrat na začátek cyklu. Tato se opakuje, pokud stále platí podmínka P. Z uvedeného je zřejmé, že v sekvenci S musí být operace, která mění některou z hodnot logického výrazu podmínky P. Kdyby tomu tak nebylo, cyklus by nemohl skončit. Při dosažení neplatnosti podmínky P cyklus skončí.&lt;br /&gt;
&lt;br /&gt;
Je tedy zřejmé, že cyklus s podmínkou na začátku (někdy zvaný cyklus POKUD) nemusí proběhnout vůbec (je-li podmínka P nesplněna před vstupem do cyklu), nebo jednou, či n-krát. V případě chybného naprogramování cyklu může dojít k zacyklení, což nastane, pokud podmínka P platí stále.&lt;br /&gt;
&amp;lt;pre&amp;gt;int i=0;&lt;br /&gt;
while (i&amp;lt;10)&lt;br /&gt;
{&lt;br /&gt;
x[i] = nahoda.next(0, 11);&lt;br /&gt;
i++;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''3) Cyklus s podmínkou na konci'''&lt;br /&gt;
[[Soubor:podm_kon.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je provedena sekvence S. Poté je vyhodnocena podmínka, pokud platí, sekvence S se znovu neprovádí a běh programu pokračuje za cyklem. Není-li podmínka splněna opakuje se sekvence S a to tak dlouho, dokud podmínka stále neplatí. Z uvedeného je zřejmé, že v sekvenci S musí být operace, která mění některou z hodnot logického výrazu podmínky P. Kdyby tomu tak nebylo, cyklus by nemohl skončit.&lt;br /&gt;
&lt;br /&gt;
Tento cyklus se někdy nazývá cyklus DOKUD, čímž se myslí - dokud podmínka neplatí, opakuje se sekvence S. Tento cyklus proběhne vždy alespoň jednou. Četnost výskytu potřeby tohoto typu cyklu v programech je asi desetkrát menší než cyklu s podmínkou na začátku.&lt;br /&gt;
&amp;lt;pre&amp;gt;int i=0;&lt;br /&gt;
do&lt;br /&gt;
{&lt;br /&gt;
x[i] = nahoda.next(0, 11);&lt;br /&gt;
i++;&lt;br /&gt;
} while (i&amp;lt;10)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Podprogram ==&lt;br /&gt;
[[Soubor:podprogram.jpg]]&lt;br /&gt;
&lt;br /&gt;
* Podprogramy představují ucelené, relativně samostatné části programu, napsané v tomto programu jenom jednou, ale s možností využít je vícekrát v různých místech tohoto programu. Podprogram musí mít své jméno (identifikátor), jehož prostřednictvím se na něj v programu odvoláváme a seznam formálních parametrů, které slouží po jejich nahrazení skutečnými parametry při odvolání se na podprogram.&lt;br /&gt;
&lt;br /&gt;
*Podprogram se může vyskytovat v podobě funkce bez návratové hodnoty nebo s návratovou hodnotou. Funkci s návratovou hodnotou můžeme zahrnout do výrazu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Parametry předávané do podprogramu'''&lt;br /&gt;
*Parametr je označení pro vstupní data příslušné funkce. Existují dva způsoby předávání parametrů funkci.&lt;br /&gt;
&lt;br /&gt;
**Při '''předávání hodnotou''' (call-by-value) se těsně před zpracováním těla funkce předávaný parametr vyčíslí a výsledek se zkopíruje do lokální proměnné uvnitř volané funkce. Jakékoli změny parametru uvnitř volané funkce nemají vliv na volající funkci, neboť se pracuje s lokální kopií hodnoty původního parametru. Předávání hodnotou tedy lze používat pouze pro vstupní parametry. Tento způsob je typický např. při vytváření aritmetických funkcí.&lt;br /&gt;
&lt;br /&gt;
**Při '''předávání odkazem''' (call-by-reference) se formální parametr uvnitř volané funkce bere jen jako jiné označení (alias) pro proměnnou předanou jako skutečný parametr, tzn. ve volané funkci se pracuje přímo s předávanou proměnnou, nevytváří se tedy kopie hodnoty (což zvláště u strukturovaných proměnných znamená zpravidla úsporu času i paměti). Volaná funkce změnou parametru ovlivňuje i původní volající funkci, takže předávání odkazem lze používat pro výstupní či vstupně-výstupní parametry. Nevýhodou však je, že parametrem může být jen proměnná a nikoli výsledek obecného výrazu. Předávání odkazem se obvykle implementuje pomocí ukazatele na předávanou proměnnou.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Předávání parametrů hodnotou v jazyce C#'''&lt;br /&gt;
&amp;lt;pre&amp;gt;void Zamen(int a, int b) //zameni hodnoty v promennych&lt;br /&gt;
{&lt;br /&gt;
int pom;&lt;br /&gt;
pom = a;&lt;br /&gt;
a = b;&lt;br /&gt;
b = pom;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
Tuto funkci budeme volat z volající funkce následně:&lt;br /&gt;
&amp;lt;pre&amp;gt;static void Main(string[] args)&lt;br /&gt;
{&lt;br /&gt;
int promennaA = 10, promennaB = 20;&lt;br /&gt;
Zamen(promennaA, promennaB);&lt;br /&gt;
return 0;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
Při předávání parametrů funkci hodnotou zůstanou původní proměnné (promennaA a promennaB) po návratu zpět do volající funkce beze změny.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Předávání parametrů odkazem v jazyce C#'''&lt;br /&gt;
&amp;lt;pre&amp;gt;void Zamen(ref int a, ref int b) //zameni hodnoty v promennych&lt;br /&gt;
{&lt;br /&gt;
int pom = a;&lt;br /&gt;
a = b;&lt;br /&gt;
b = pom;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
Tuto funkci budeme volat z volající funkce následně:&lt;br /&gt;
&amp;lt;pre&amp;gt;static void Main(string[] args)&lt;br /&gt;
{&lt;br /&gt;
int promennaA = 10, promennaB = 20;&lt;br /&gt;
Zamen(ref promennaA, ref promennaB);&lt;br /&gt;
return 0;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
Po předání parametrů funkci tímto způsobem budou po návratu zpět do volající funkce v našich proměnných (promennaA a promennaB) hodnoty 20 a 10.&lt;/div&gt;</summary>
		<author><name>Capik</name></author>	</entry>

	<entry>
		<id>http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury</id>
		<title>Programové struktury</title>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury"/>
				<updated>2012-04-21T12:03:10Z</updated>
		
		<summary type="html">&lt;p&gt;Capik: /* Podprogram */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* způsob zápisu algoritmu pomocí VD &lt;br /&gt;
* událostní funkce &lt;br /&gt;
* obecná funkce, objektová metoda, předávání parametrů funkci, návratová hodnota &lt;br /&gt;
* binární větvení &lt;br /&gt;
* cyklus (podmíněný, s definovaným počtem opakování) &lt;br /&gt;
* objekt &lt;br /&gt;
* příklady programů ve vybraném jazyce&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Strukturované programování (strukturovaný programovací jazyk) ==&lt;br /&gt;
* označuje v informatice programovací techniku, kdy se implementovaný algoritmus rozděluje na dílčí úlohy (tzn. na procedury či funkce, které se spojují v jeden celek). Na strukturované programování lze nahlížet jako na imperativní programování za využití vybraných řídicích. U strukturovaného programování se vyhýbáme řídicímu příkazu skoku.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Strukturované programování definuje, že se program může skládat pouze z následujících čtyř struktur:&lt;br /&gt;
** '''sekvence:''' provádí posloupnost příkazů jeden po druhém&lt;br /&gt;
** '''větvení:''' jeden nebo více příkazů je vykonán v závislosti na stavu programu (obvykle vyjadřováno klíčovými slovy if-else)&lt;br /&gt;
** '''cyklus:''' příkazy jsou prováděny do té doby, dokud program nedosáhne nějakého stavu (obvykle vyjadřováno klíčovými slovy while, for)&lt;br /&gt;
** '''podprogram:''' příkazy jsou shromažďovány do samostatného bloku, který má své jméno a definuje vstupy a výstupy. Tento blok (funkci nebo proceduru) lze z jiné části programu volat jeho jménem (identifikátorem). Funkce s návratovou hodnotou lze zařadit do výrazu.&lt;br /&gt;
* Nejznámějším důsledkem těchto zásad je snaha zabránit nebo v závislosti na programovacím jazyce alespoň omezit používání příkazu skoku. Programový kód nerespektující výše uvedené zásady se často hanlivě označuje jako „špagetový kód“.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sekvence ==&lt;br /&gt;
* Sekvence představuje posloupnost jednotlivých příkazů řazených v pořadí za sebou tak, jak mají být vykonány. Uzavřená sekvence se nazývá '''složený příkaz nebo blok.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Větvení ==&lt;br /&gt;
* Větvení umožňuje volit další postup řešení na základě splnění nebo nesplnění určité podmínky. Z obecného pohledu ale nemusí být vždy testována podmínka, neboť rozhodující pro větvení je až logická hodnota (true/false), která je výsledkem zmíněné podmínky. Větvit lze tedy i jen na základě hodnoty v logické proměnné. Větvení může být realizováno jako neúplný podmíněný příkaz, úplný podmíněný příkaz nebo jako přepínač.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''1) Neúplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:neuplny_podm_prikaz.jpg]] &lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S. Není-li podmínka splněna, nic se neprovádí a běh programu pokračuje dále.&lt;br /&gt;
&amp;lt;pre&amp;gt;int x;&lt;br /&gt;
if (x &amp;gt; 0) MessageBox.Show(&amp;quot;Kladné číslo&amp;quot;);&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''2) Úplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:uplny_podm_prikaz.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S1. Není-li podmínka splněna, provede se sekvence S2.&lt;br /&gt;
&amp;lt;pre&amp;gt;int x;&lt;br /&gt;
if (x &amp;gt; 0)&lt;br /&gt;
{&lt;br /&gt;
MessageBox.Show(&amp;quot;Je přirozené číslo&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
else&lt;br /&gt;
{&lt;br /&gt;
MessageBox.Show(&amp;quot;Není přirozené číslo&amp;quot;);&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Cyklus ==&lt;br /&gt;
* Slouží k vyjádření opakujících se operací. Počet opakování může být předem zadán, nebo je odvozen od splnění některé dané podmínky. Existují tak tři základní druhy cyklu: '''cyklus s výčtem hodnot, cyklus s podmínkou na počátku a cyklus s podmínkou na konci.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''1) Cyklus s výčtem hodnot (cyklus s předepsaným počtem opakování)'''&lt;br /&gt;
[[Soubor:cyklus_s_vyctem_hodnot.jpg]]&lt;br /&gt;
&lt;br /&gt;
Tento druh cyklu se provádí tolikrát, kolikrát je opakování cyklu předepsáno. Předpis je dán definicí dolní hodnoty p, kroku a horní hodnoty p (případně podmínky, která musí být po celou dobu vykonávání cyklu splněna).&lt;br /&gt;
&amp;lt;pre&amp;gt;for (int i = 0; i &amp;lt; 10; i++) x[i] = nahoda.next(0, 11);&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''2) Cyklus s podmínkou na začátku'''&lt;br /&gt;
[[Soubor:podm_zac.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Je-li podmínka splněna, provedou se příkazy sekvencí C a následuje návrat na začátek cyklu. Tato se opakuje, pokud stále platí podmínka P. Z uvedeného je zřejmé, že v sekvenci S musí být operace, která mění některou z hodnot logického výrazu podmínky P. Kdyby tomu tak nebylo, cyklus by nemohl skončit. Při dosažení neplatnosti podmínky P cyklus skončí.&lt;br /&gt;
&lt;br /&gt;
Je tedy zřejmé, že cyklus s podmínkou na začátku (někdy zvaný cyklus POKUD) nemusí proběhnout vůbec (je-li podmínka P nesplněna před vstupem do cyklu), nebo jednou, či n-krát. V případě chybného naprogramování cyklu může dojít k zacyklení, což nastane, pokud podmínka P platí stále.&lt;br /&gt;
&amp;lt;pre&amp;gt;int i=0;&lt;br /&gt;
while (i&amp;lt;10)&lt;br /&gt;
{&lt;br /&gt;
x[i] = nahoda.next(0, 11);&lt;br /&gt;
i++;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''3) Cyklus s podmínkou na konci'''&lt;br /&gt;
[[Soubor:podm_kon.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je provedena sekvence S. Poté je vyhodnocena podmínka, pokud platí, sekvence S se znovu neprovádí a běh programu pokračuje za cyklem. Není-li podmínka splněna opakuje se sekvence S a to tak dlouho, dokud podmínka stále neplatí. Z uvedeného je zřejmé, že v sekvenci S musí být operace, která mění některou z hodnot logického výrazu podmínky P. Kdyby tomu tak nebylo, cyklus by nemohl skončit.&lt;br /&gt;
&lt;br /&gt;
Tento cyklus se někdy nazývá cyklus DOKUD, čímž se myslí - dokud podmínka neplatí, opakuje se sekvence S. Tento cyklus proběhne vždy alespoň jednou. Četnost výskytu potřeby tohoto typu cyklu v programech je asi desetkrát menší než cyklu s podmínkou na začátku.&lt;br /&gt;
&amp;lt;pre&amp;gt;int i=0;&lt;br /&gt;
do&lt;br /&gt;
{&lt;br /&gt;
x[i] = nahoda.next(0, 11);&lt;br /&gt;
i++;&lt;br /&gt;
} while (i&amp;lt;10)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Podprogram ==&lt;br /&gt;
[[Soubor:podprogram.jpg]]&lt;br /&gt;
&lt;br /&gt;
* Podprogramy představují ucelené, relativně samostatné části programu, napsané v tomto programu jenom jednou, ale s možností využít je vícekrát v různých místech tohoto programu. Podprogram musí mít své jméno (identifikátor), jehož prostřednictvím se na něj v programu odvoláváme a seznam formálních parametrů, které slouží po jejich nahrazení skutečnými parametry při odvolání se na podprogram.&lt;br /&gt;
&lt;br /&gt;
*Podprogram se může vyskytovat v podobě funkce bez návratové hodnoty nebo s návratovou hodnotou. Funkci s návratovou hodnotou můžeme zahrnout do výrazu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Parametry předávané do podprogramu'''&lt;br /&gt;
*Parametr je označení pro vstupní data příslušné funkce. Existují dva způsoby předávání parametrů funkci.&lt;br /&gt;
&lt;br /&gt;
**Při '''předávání hodnotou''' (call-by-value) se těsně před zpracováním těla funkce předávaný parametr vyčíslí a výsledek se zkopíruje do lokální proměnné uvnitř volané funkce. Jakékoli změny parametru uvnitř volané funkce nemají vliv na volající funkci, neboť se pracuje s lokální kopií hodnoty původního parametru. Předávání hodnotou tedy lze používat pouze pro vstupní parametry. Tento způsob je typický např. při vytváření aritmetických funkcí.&lt;br /&gt;
&lt;br /&gt;
**Při '''předávání odkazem''' (call-by-reference) se formální parametr uvnitř volané funkce bere jen jako jiné označení (alias) pro proměnnou předanou jako skutečný parametr, tzn. ve volané funkci se pracuje přímo s předávanou proměnnou, nevytváří se tedy kopie hodnoty (což zvláště u strukturovaných proměnných znamená zpravidla úsporu času i paměti). Volaná funkce změnou parametru ovlivňuje i původní volající funkci, takže předávání odkazem lze používat pro výstupní či vstupně-výstupní parametry. Nevýhodou však je, že parametrem může být jen proměnná a nikoli výsledek obecného výrazu. Předávání odkazem se obvykle implementuje pomocí ukazatele na předávanou proměnnou.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Předávání parametrů hodnotou v jazyce C#'''&lt;br /&gt;
&amp;lt;pre&amp;gt;void Zamen(int a, int b) //zameni hodnoty v promennych&lt;br /&gt;
{&lt;br /&gt;
int pom;&lt;br /&gt;
pom = a;&lt;br /&gt;
a = b;&lt;br /&gt;
b = pom;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
Tuto funkci budeme volat z volající funkce následně:&lt;br /&gt;
&amp;lt;pre&amp;gt;static void Main(string[] args)&lt;br /&gt;
{&lt;br /&gt;
int promennaA = 10, promennaB = 20;&lt;br /&gt;
Zamen(promennaA, promennaB);&lt;br /&gt;
return 0;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
Při předávání parametrů funkci hodnotou zůstanou původní proměnné (promennaA a promennaB) po návratu zpět do volající funkce beze změny.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Předávání parametrů odkazem v jazyce C#'''&lt;br /&gt;
&amp;lt;pre&amp;gt;void Zamen(ref int a, ref int b) //zameni hodnoty v promennych&lt;br /&gt;
{&lt;br /&gt;
int pom = a;&lt;br /&gt;
a = b;&lt;br /&gt;
b = pom;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
Tuto funkci budeme volat z volající funkce následně:&lt;br /&gt;
&amp;lt;pre&amp;gt;static void Main(string[] args)&lt;br /&gt;
{&lt;br /&gt;
int promennaA = 10, promennaB = 20;&lt;br /&gt;
Zamen(ref promennaA, ref promennaB);&lt;br /&gt;
return 0;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
Po předání parametrů funkci tímto způsobem budou po návratu zpět do volající funkce v našich proměnných (promennaA a promennaB) hodnoty 20 a 10.&lt;/div&gt;</summary>
		<author><name>Capik</name></author>	</entry>

	<entry>
		<id>http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury</id>
		<title>Programové struktury</title>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury"/>
				<updated>2012-04-21T12:00:16Z</updated>
		
		<summary type="html">&lt;p&gt;Capik: /* Podprogram */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* způsob zápisu algoritmu pomocí VD &lt;br /&gt;
* událostní funkce &lt;br /&gt;
* obecná funkce, objektová metoda, předávání parametrů funkci, návratová hodnota &lt;br /&gt;
* binární větvení &lt;br /&gt;
* cyklus (podmíněný, s definovaným počtem opakování) &lt;br /&gt;
* objekt &lt;br /&gt;
* příklady programů ve vybraném jazyce&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Strukturované programování (strukturovaný programovací jazyk) ==&lt;br /&gt;
* označuje v informatice programovací techniku, kdy se implementovaný algoritmus rozděluje na dílčí úlohy (tzn. na procedury či funkce, které se spojují v jeden celek). Na strukturované programování lze nahlížet jako na imperativní programování za využití vybraných řídicích. U strukturovaného programování se vyhýbáme řídicímu příkazu skoku.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Strukturované programování definuje, že se program může skládat pouze z následujících čtyř struktur:&lt;br /&gt;
** '''sekvence:''' provádí posloupnost příkazů jeden po druhém&lt;br /&gt;
** '''větvení:''' jeden nebo více příkazů je vykonán v závislosti na stavu programu (obvykle vyjadřováno klíčovými slovy if-else)&lt;br /&gt;
** '''cyklus:''' příkazy jsou prováděny do té doby, dokud program nedosáhne nějakého stavu (obvykle vyjadřováno klíčovými slovy while, for)&lt;br /&gt;
** '''podprogram:''' příkazy jsou shromažďovány do samostatného bloku, který má své jméno a definuje vstupy a výstupy. Tento blok (funkci nebo proceduru) lze z jiné části programu volat jeho jménem (identifikátorem). Funkce s návratovou hodnotou lze zařadit do výrazu.&lt;br /&gt;
* Nejznámějším důsledkem těchto zásad je snaha zabránit nebo v závislosti na programovacím jazyce alespoň omezit používání příkazu skoku. Programový kód nerespektující výše uvedené zásady se často hanlivě označuje jako „špagetový kód“.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sekvence ==&lt;br /&gt;
* Sekvence představuje posloupnost jednotlivých příkazů řazených v pořadí za sebou tak, jak mají být vykonány. Uzavřená sekvence se nazývá '''složený příkaz nebo blok.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Větvení ==&lt;br /&gt;
* Větvení umožňuje volit další postup řešení na základě splnění nebo nesplnění určité podmínky. Z obecného pohledu ale nemusí být vždy testována podmínka, neboť rozhodující pro větvení je až logická hodnota (true/false), která je výsledkem zmíněné podmínky. Větvit lze tedy i jen na základě hodnoty v logické proměnné. Větvení může být realizováno jako neúplný podmíněný příkaz, úplný podmíněný příkaz nebo jako přepínač.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''1) Neúplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:neuplny_podm_prikaz.jpg]] &lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S. Není-li podmínka splněna, nic se neprovádí a běh programu pokračuje dále.&lt;br /&gt;
&amp;lt;pre&amp;gt;int x;&lt;br /&gt;
if (x &amp;gt; 0) MessageBox.Show(&amp;quot;Kladné číslo&amp;quot;);&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''2) Úplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:uplny_podm_prikaz.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S1. Není-li podmínka splněna, provede se sekvence S2.&lt;br /&gt;
&amp;lt;pre&amp;gt;int x;&lt;br /&gt;
if (x &amp;gt; 0)&lt;br /&gt;
{&lt;br /&gt;
MessageBox.Show(&amp;quot;Je přirozené číslo&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
else&lt;br /&gt;
{&lt;br /&gt;
MessageBox.Show(&amp;quot;Není přirozené číslo&amp;quot;);&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Cyklus ==&lt;br /&gt;
* Slouží k vyjádření opakujících se operací. Počet opakování může být předem zadán, nebo je odvozen od splnění některé dané podmínky. Existují tak tři základní druhy cyklu: '''cyklus s výčtem hodnot, cyklus s podmínkou na počátku a cyklus s podmínkou na konci.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''1) Cyklus s výčtem hodnot (cyklus s předepsaným počtem opakování)'''&lt;br /&gt;
[[Soubor:cyklus_s_vyctem_hodnot.jpg]]&lt;br /&gt;
&lt;br /&gt;
Tento druh cyklu se provádí tolikrát, kolikrát je opakování cyklu předepsáno. Předpis je dán definicí dolní hodnoty p, kroku a horní hodnoty p (případně podmínky, která musí být po celou dobu vykonávání cyklu splněna).&lt;br /&gt;
&amp;lt;pre&amp;gt;for (int i = 0; i &amp;lt; 10; i++) x[i] = nahoda.next(0, 11);&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''2) Cyklus s podmínkou na začátku'''&lt;br /&gt;
[[Soubor:podm_zac.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Je-li podmínka splněna, provedou se příkazy sekvencí C a následuje návrat na začátek cyklu. Tato se opakuje, pokud stále platí podmínka P. Z uvedeného je zřejmé, že v sekvenci S musí být operace, která mění některou z hodnot logického výrazu podmínky P. Kdyby tomu tak nebylo, cyklus by nemohl skončit. Při dosažení neplatnosti podmínky P cyklus skončí.&lt;br /&gt;
&lt;br /&gt;
Je tedy zřejmé, že cyklus s podmínkou na začátku (někdy zvaný cyklus POKUD) nemusí proběhnout vůbec (je-li podmínka P nesplněna před vstupem do cyklu), nebo jednou, či n-krát. V případě chybného naprogramování cyklu může dojít k zacyklení, což nastane, pokud podmínka P platí stále.&lt;br /&gt;
&amp;lt;pre&amp;gt;int i=0;&lt;br /&gt;
while (i&amp;lt;10)&lt;br /&gt;
{&lt;br /&gt;
x[i] = nahoda.next(0, 11);&lt;br /&gt;
i++;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''3) Cyklus s podmínkou na konci'''&lt;br /&gt;
[[Soubor:podm_kon.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je provedena sekvence S. Poté je vyhodnocena podmínka, pokud platí, sekvence S se znovu neprovádí a běh programu pokračuje za cyklem. Není-li podmínka splněna opakuje se sekvence S a to tak dlouho, dokud podmínka stále neplatí. Z uvedeného je zřejmé, že v sekvenci S musí být operace, která mění některou z hodnot logického výrazu podmínky P. Kdyby tomu tak nebylo, cyklus by nemohl skončit.&lt;br /&gt;
&lt;br /&gt;
Tento cyklus se někdy nazývá cyklus DOKUD, čímž se myslí - dokud podmínka neplatí, opakuje se sekvence S. Tento cyklus proběhne vždy alespoň jednou. Četnost výskytu potřeby tohoto typu cyklu v programech je asi desetkrát menší než cyklu s podmínkou na začátku.&lt;br /&gt;
&amp;lt;pre&amp;gt;int i=0;&lt;br /&gt;
do&lt;br /&gt;
{&lt;br /&gt;
x[i] = nahoda.next(0, 11);&lt;br /&gt;
i++;&lt;br /&gt;
} while (i&amp;lt;10)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Podprogram ==&lt;br /&gt;
[[Soubor:podprogram.jpg]]&lt;br /&gt;
&lt;br /&gt;
* Podprogramy představují ucelené, relativně samostatné části programu, napsané v tomto programu jenom jednou, ale s možností využít je vícekrát v různých místech tohoto programu. Podprogram musí mít své jméno (identifikátor), jehož prostřednictvím se na něj v programu odvoláváme a seznam formálních parametrů, které slouží po jejich nahrazení skutečnými parametry při odvolání se na podprogram.&lt;br /&gt;
&lt;br /&gt;
*Podprogram se může vyskytovat v podobě funkce bez návratové hodnoty nebo s návratovou hodnotou. Funkci s návratovou hodnotou můžeme zahrnout do výrazu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Parametry předávané do podprogramu'''&lt;br /&gt;
*Parametr je označení pro vstupní data příslušné funkce. Existují dva způsoby předávání parametrů funkci.&lt;br /&gt;
&lt;br /&gt;
**Při '''předávání hodnotou''' (call-by-value) se těsně před zpracováním těla funkce předávaný parametr vyčíslí a výsledek se zkopíruje do lokální proměnné uvnitř volané funkce. Jakékoli změny parametru uvnitř volané funkce nemají vliv na volající funkci, neboť se pracuje s lokální kopií hodnoty původního parametru. Předávání hodnotou tedy lze používat pouze pro vstupní parametry. Tento způsob je typický např. při vytváření aritmetických funkcí.&lt;br /&gt;
&lt;br /&gt;
**Při '''předávání odkazem''' (call-by-reference) se formální parametr uvnitř volané funkce bere jen jako jiné označení (alias) pro proměnnou předanou jako skutečný parametr, tzn. ve volané funkci se pracuje přímo s předávanou proměnnou, nevytváří se tedy kopie hodnoty (což zvláště u strukturovaných proměnných znamená zpravidla úsporu času i paměti). Volaná funkce změnou parametru ovlivňuje i původní volající funkci, takže předávání odkazem lze používat pro výstupní či vstupně-výstupní parametry. Nevýhodou však je, že parametrem může být jen proměnná a nikoli výsledek obecného výrazu. Předávání odkazem se obvykle implementuje pomocí ukazatele na předávanou proměnnou.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Předávání parametrů hodnotou v jazyce C#'''&lt;br /&gt;
&amp;lt;pre&amp;gt;void Zamen(int a, int b) //zameni hodnoty v promennych&lt;br /&gt;
{&lt;br /&gt;
int pom;&lt;br /&gt;
pom = a;&lt;br /&gt;
a = b;&lt;br /&gt;
b = pom;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
Tuto funkci budeme volat z volající funkce následně:&lt;br /&gt;
&amp;lt;pre&amp;gt;static void Main(string[] args)&lt;br /&gt;
{&lt;br /&gt;
int promennaA = 10, promennaB = 20;&lt;br /&gt;
Zamen(promennaA, promennaB);&lt;br /&gt;
return 0;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
Při předávání parametrů funkci hodnotou zůstanou původní proměnné (promennaA a promennaB) po návratu zpět do volající funkce beze změny.&lt;/div&gt;</summary>
		<author><name>Capik</name></author>	</entry>

	<entry>
		<id>http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury</id>
		<title>Programové struktury</title>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury"/>
				<updated>2012-04-21T11:42:22Z</updated>
		
		<summary type="html">&lt;p&gt;Capik: /* Větvení */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* způsob zápisu algoritmu pomocí VD &lt;br /&gt;
* událostní funkce &lt;br /&gt;
* obecná funkce, objektová metoda, předávání parametrů funkci, návratová hodnota &lt;br /&gt;
* binární větvení &lt;br /&gt;
* cyklus (podmíněný, s definovaným počtem opakování) &lt;br /&gt;
* objekt &lt;br /&gt;
* příklady programů ve vybraném jazyce&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Strukturované programování (strukturovaný programovací jazyk) ==&lt;br /&gt;
* označuje v informatice programovací techniku, kdy se implementovaný algoritmus rozděluje na dílčí úlohy (tzn. na procedury či funkce, které se spojují v jeden celek). Na strukturované programování lze nahlížet jako na imperativní programování za využití vybraných řídicích. U strukturovaného programování se vyhýbáme řídicímu příkazu skoku.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Strukturované programování definuje, že se program může skládat pouze z následujících čtyř struktur:&lt;br /&gt;
** '''sekvence:''' provádí posloupnost příkazů jeden po druhém&lt;br /&gt;
** '''větvení:''' jeden nebo více příkazů je vykonán v závislosti na stavu programu (obvykle vyjadřováno klíčovými slovy if-else)&lt;br /&gt;
** '''cyklus:''' příkazy jsou prováděny do té doby, dokud program nedosáhne nějakého stavu (obvykle vyjadřováno klíčovými slovy while, for)&lt;br /&gt;
** '''podprogram:''' příkazy jsou shromažďovány do samostatného bloku, který má své jméno a definuje vstupy a výstupy. Tento blok (funkci nebo proceduru) lze z jiné části programu volat jeho jménem (identifikátorem). Funkce s návratovou hodnotou lze zařadit do výrazu.&lt;br /&gt;
* Nejznámějším důsledkem těchto zásad je snaha zabránit nebo v závislosti na programovacím jazyce alespoň omezit používání příkazu skoku. Programový kód nerespektující výše uvedené zásady se často hanlivě označuje jako „špagetový kód“.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sekvence ==&lt;br /&gt;
* Sekvence představuje posloupnost jednotlivých příkazů řazených v pořadí za sebou tak, jak mají být vykonány. Uzavřená sekvence se nazývá '''složený příkaz nebo blok.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Větvení ==&lt;br /&gt;
* Větvení umožňuje volit další postup řešení na základě splnění nebo nesplnění určité podmínky. Z obecného pohledu ale nemusí být vždy testována podmínka, neboť rozhodující pro větvení je až logická hodnota (true/false), která je výsledkem zmíněné podmínky. Větvit lze tedy i jen na základě hodnoty v logické proměnné. Větvení může být realizováno jako neúplný podmíněný příkaz, úplný podmíněný příkaz nebo jako přepínač.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''1) Neúplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:neuplny_podm_prikaz.jpg]] &lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S. Není-li podmínka splněna, nic se neprovádí a běh programu pokračuje dále.&lt;br /&gt;
&amp;lt;pre&amp;gt;int x;&lt;br /&gt;
if (x &amp;gt; 0) MessageBox.Show(&amp;quot;Kladné číslo&amp;quot;);&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''2) Úplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:uplny_podm_prikaz.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S1. Není-li podmínka splněna, provede se sekvence S2.&lt;br /&gt;
&amp;lt;pre&amp;gt;int x;&lt;br /&gt;
if (x &amp;gt; 0)&lt;br /&gt;
{&lt;br /&gt;
MessageBox.Show(&amp;quot;Je přirozené číslo&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
else&lt;br /&gt;
{&lt;br /&gt;
MessageBox.Show(&amp;quot;Není přirozené číslo&amp;quot;);&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Cyklus ==&lt;br /&gt;
* Slouží k vyjádření opakujících se operací. Počet opakování může být předem zadán, nebo je odvozen od splnění některé dané podmínky. Existují tak tři základní druhy cyklu: '''cyklus s výčtem hodnot, cyklus s podmínkou na počátku a cyklus s podmínkou na konci.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''1) Cyklus s výčtem hodnot (cyklus s předepsaným počtem opakování)'''&lt;br /&gt;
[[Soubor:cyklus_s_vyctem_hodnot.jpg]]&lt;br /&gt;
&lt;br /&gt;
Tento druh cyklu se provádí tolikrát, kolikrát je opakování cyklu předepsáno. Předpis je dán definicí dolní hodnoty p, kroku a horní hodnoty p (případně podmínky, která musí být po celou dobu vykonávání cyklu splněna).&lt;br /&gt;
&amp;lt;pre&amp;gt;for (int i = 0; i &amp;lt; 10; i++) x[i] = nahoda.next(0, 11);&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''2) Cyklus s podmínkou na začátku'''&lt;br /&gt;
[[Soubor:podm_zac.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Je-li podmínka splněna, provedou se příkazy sekvencí C a následuje návrat na začátek cyklu. Tato se opakuje, pokud stále platí podmínka P. Z uvedeného je zřejmé, že v sekvenci S musí být operace, která mění některou z hodnot logického výrazu podmínky P. Kdyby tomu tak nebylo, cyklus by nemohl skončit. Při dosažení neplatnosti podmínky P cyklus skončí.&lt;br /&gt;
&lt;br /&gt;
Je tedy zřejmé, že cyklus s podmínkou na začátku (někdy zvaný cyklus POKUD) nemusí proběhnout vůbec (je-li podmínka P nesplněna před vstupem do cyklu), nebo jednou, či n-krát. V případě chybného naprogramování cyklu může dojít k zacyklení, což nastane, pokud podmínka P platí stále.&lt;br /&gt;
&amp;lt;pre&amp;gt;int i=0;&lt;br /&gt;
while (i&amp;lt;10)&lt;br /&gt;
{&lt;br /&gt;
x[i] = nahoda.next(0, 11);&lt;br /&gt;
i++;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''3) Cyklus s podmínkou na konci'''&lt;br /&gt;
[[Soubor:podm_kon.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je provedena sekvence S. Poté je vyhodnocena podmínka, pokud platí, sekvence S se znovu neprovádí a běh programu pokračuje za cyklem. Není-li podmínka splněna opakuje se sekvence S a to tak dlouho, dokud podmínka stále neplatí. Z uvedeného je zřejmé, že v sekvenci S musí být operace, která mění některou z hodnot logického výrazu podmínky P. Kdyby tomu tak nebylo, cyklus by nemohl skončit.&lt;br /&gt;
&lt;br /&gt;
Tento cyklus se někdy nazývá cyklus DOKUD, čímž se myslí - dokud podmínka neplatí, opakuje se sekvence S. Tento cyklus proběhne vždy alespoň jednou. Četnost výskytu potřeby tohoto typu cyklu v programech je asi desetkrát menší než cyklu s podmínkou na začátku.&lt;br /&gt;
&amp;lt;pre&amp;gt;int i=0;&lt;br /&gt;
do&lt;br /&gt;
{&lt;br /&gt;
x[i] = nahoda.next(0, 11);&lt;br /&gt;
i++;&lt;br /&gt;
} while (i&amp;lt;10)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Podprogram ==&lt;br /&gt;
[[Soubor:podprogram.jpg]]&lt;br /&gt;
&lt;br /&gt;
* Podprogramy představují ucelené, relativně samostatné části programu, napsané v tomto programu jenom jednou, ale s možností využít je vícekrát v různých místech tohoto programu. Podprogram musí mít své jméno (identifikátor), jehož prostřednictvím se na něj v programu odvoláváme a seznam formálních parametrů, které slouží po jejich nahrazení skutečnými parametry při odvolání se na podprogram.&lt;/div&gt;</summary>
		<author><name>Capik</name></author>	</entry>

	<entry>
		<id>http://maturitait4.iunas.cz/index.php?title=Soubor:Podprogram.jpg</id>
		<title>Soubor:Podprogram.jpg</title>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Soubor:Podprogram.jpg"/>
				<updated>2012-04-21T11:39:37Z</updated>
		
		<summary type="html">&lt;p&gt;Capik: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Capik</name></author>	</entry>

	<entry>
		<id>http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury</id>
		<title>Programové struktury</title>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury"/>
				<updated>2012-04-21T11:39:17Z</updated>
		
		<summary type="html">&lt;p&gt;Capik: /* Cyklus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* způsob zápisu algoritmu pomocí VD &lt;br /&gt;
* událostní funkce &lt;br /&gt;
* obecná funkce, objektová metoda, předávání parametrů funkci, návratová hodnota &lt;br /&gt;
* binární větvení &lt;br /&gt;
* cyklus (podmíněný, s definovaným počtem opakování) &lt;br /&gt;
* objekt &lt;br /&gt;
* příklady programů ve vybraném jazyce&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Strukturované programování (strukturovaný programovací jazyk) ==&lt;br /&gt;
* označuje v informatice programovací techniku, kdy se implementovaný algoritmus rozděluje na dílčí úlohy (tzn. na procedury či funkce, které se spojují v jeden celek). Na strukturované programování lze nahlížet jako na imperativní programování za využití vybraných řídicích. U strukturovaného programování se vyhýbáme řídicímu příkazu skoku.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Strukturované programování definuje, že se program může skládat pouze z následujících čtyř struktur:&lt;br /&gt;
** '''sekvence:''' provádí posloupnost příkazů jeden po druhém&lt;br /&gt;
** '''větvení:''' jeden nebo více příkazů je vykonán v závislosti na stavu programu (obvykle vyjadřováno klíčovými slovy if-else)&lt;br /&gt;
** '''cyklus:''' příkazy jsou prováděny do té doby, dokud program nedosáhne nějakého stavu (obvykle vyjadřováno klíčovými slovy while, for)&lt;br /&gt;
** '''podprogram:''' příkazy jsou shromažďovány do samostatného bloku, který má své jméno a definuje vstupy a výstupy. Tento blok (funkci nebo proceduru) lze z jiné části programu volat jeho jménem (identifikátorem). Funkce s návratovou hodnotou lze zařadit do výrazu.&lt;br /&gt;
* Nejznámějším důsledkem těchto zásad je snaha zabránit nebo v závislosti na programovacím jazyce alespoň omezit používání příkazu skoku. Programový kód nerespektující výše uvedené zásady se často hanlivě označuje jako „špagetový kód“.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sekvence ==&lt;br /&gt;
* Sekvence představuje posloupnost jednotlivých příkazů řazených v pořadí za sebou tak, jak mají být vykonány. Uzavřená sekvence se nazývá '''složený příkaz nebo blok.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Větvení ==&lt;br /&gt;
* Větvení umožňuje volit další postup řešení na základě splnění nebo nesplnění určité podmínky. Z obecného pohledu ale nemusí být vždy testována podmínka, neboť rozhodující pro větvení je až logická hodnota (true/false), která je výsledkem zmíněné podmínky. Větvit lze tedy i jen na základě hodnoty v logické proměnné. Větvení může být realizováno jako neúplný podmíněný příkaz, úplný podmíněný příkaz nebo jako přepínač.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Neúplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:neuplny_podm_prikaz.jpg]] &lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S. Není-li podmínka splněna, nic se neprovádí a běh programu pokračuje dále.&lt;br /&gt;
&amp;lt;pre&amp;gt;int x;&lt;br /&gt;
if (x &amp;gt; 0) MessageBox.Show(&amp;quot;Kladné číslo&amp;quot;);&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''Úplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:uplny_podm_prikaz.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S1. Není-li podmínka splněna, provede se sekvence S2.&lt;br /&gt;
&amp;lt;pre&amp;gt;int x;&lt;br /&gt;
if (x &amp;gt; 0)&lt;br /&gt;
{&lt;br /&gt;
MessageBox.Show(&amp;quot;Je přirozené číslo&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
else&lt;br /&gt;
{&lt;br /&gt;
MessageBox.Show(&amp;quot;Není přirozené číslo&amp;quot;);&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Cyklus ==&lt;br /&gt;
* Slouží k vyjádření opakujících se operací. Počet opakování může být předem zadán, nebo je odvozen od splnění některé dané podmínky. Existují tak tři základní druhy cyklu: '''cyklus s výčtem hodnot, cyklus s podmínkou na počátku a cyklus s podmínkou na konci.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''1) Cyklus s výčtem hodnot (cyklus s předepsaným počtem opakování)'''&lt;br /&gt;
[[Soubor:cyklus_s_vyctem_hodnot.jpg]]&lt;br /&gt;
&lt;br /&gt;
Tento druh cyklu se provádí tolikrát, kolikrát je opakování cyklu předepsáno. Předpis je dán definicí dolní hodnoty p, kroku a horní hodnoty p (případně podmínky, která musí být po celou dobu vykonávání cyklu splněna).&lt;br /&gt;
&amp;lt;pre&amp;gt;for (int i = 0; i &amp;lt; 10; i++) x[i] = nahoda.next(0, 11);&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''2) Cyklus s podmínkou na začátku'''&lt;br /&gt;
[[Soubor:podm_zac.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Je-li podmínka splněna, provedou se příkazy sekvencí C a následuje návrat na začátek cyklu. Tato se opakuje, pokud stále platí podmínka P. Z uvedeného je zřejmé, že v sekvenci S musí být operace, která mění některou z hodnot logického výrazu podmínky P. Kdyby tomu tak nebylo, cyklus by nemohl skončit. Při dosažení neplatnosti podmínky P cyklus skončí.&lt;br /&gt;
&lt;br /&gt;
Je tedy zřejmé, že cyklus s podmínkou na začátku (někdy zvaný cyklus POKUD) nemusí proběhnout vůbec (je-li podmínka P nesplněna před vstupem do cyklu), nebo jednou, či n-krát. V případě chybného naprogramování cyklu může dojít k zacyklení, což nastane, pokud podmínka P platí stále.&lt;br /&gt;
&amp;lt;pre&amp;gt;int i=0;&lt;br /&gt;
while (i&amp;lt;10)&lt;br /&gt;
{&lt;br /&gt;
x[i] = nahoda.next(0, 11);&lt;br /&gt;
i++;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''3) Cyklus s podmínkou na konci'''&lt;br /&gt;
[[Soubor:podm_kon.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je provedena sekvence S. Poté je vyhodnocena podmínka, pokud platí, sekvence S se znovu neprovádí a běh programu pokračuje za cyklem. Není-li podmínka splněna opakuje se sekvence S a to tak dlouho, dokud podmínka stále neplatí. Z uvedeného je zřejmé, že v sekvenci S musí být operace, která mění některou z hodnot logického výrazu podmínky P. Kdyby tomu tak nebylo, cyklus by nemohl skončit.&lt;br /&gt;
&lt;br /&gt;
Tento cyklus se někdy nazývá cyklus DOKUD, čímž se myslí - dokud podmínka neplatí, opakuje se sekvence S. Tento cyklus proběhne vždy alespoň jednou. Četnost výskytu potřeby tohoto typu cyklu v programech je asi desetkrát menší než cyklu s podmínkou na začátku.&lt;br /&gt;
&amp;lt;pre&amp;gt;int i=0;&lt;br /&gt;
do&lt;br /&gt;
{&lt;br /&gt;
x[i] = nahoda.next(0, 11);&lt;br /&gt;
i++;&lt;br /&gt;
} while (i&amp;lt;10)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Podprogram ==&lt;br /&gt;
[[Soubor:podprogram.jpg]]&lt;br /&gt;
&lt;br /&gt;
* Podprogramy představují ucelené, relativně samostatné části programu, napsané v tomto programu jenom jednou, ale s možností využít je vícekrát v různých místech tohoto programu. Podprogram musí mít své jméno (identifikátor), jehož prostřednictvím se na něj v programu odvoláváme a seznam formálních parametrů, které slouží po jejich nahrazení skutečnými parametry při odvolání se na podprogram.&lt;/div&gt;</summary>
		<author><name>Capik</name></author>	</entry>

	<entry>
		<id>http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury</id>
		<title>Programové struktury</title>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury"/>
				<updated>2012-04-21T11:36:40Z</updated>
		
		<summary type="html">&lt;p&gt;Capik: /* Cyklus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* způsob zápisu algoritmu pomocí VD &lt;br /&gt;
* událostní funkce &lt;br /&gt;
* obecná funkce, objektová metoda, předávání parametrů funkci, návratová hodnota &lt;br /&gt;
* binární větvení &lt;br /&gt;
* cyklus (podmíněný, s definovaným počtem opakování) &lt;br /&gt;
* objekt &lt;br /&gt;
* příklady programů ve vybraném jazyce&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Strukturované programování (strukturovaný programovací jazyk) ==&lt;br /&gt;
* označuje v informatice programovací techniku, kdy se implementovaný algoritmus rozděluje na dílčí úlohy (tzn. na procedury či funkce, které se spojují v jeden celek). Na strukturované programování lze nahlížet jako na imperativní programování za využití vybraných řídicích. U strukturovaného programování se vyhýbáme řídicímu příkazu skoku.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Strukturované programování definuje, že se program může skládat pouze z následujících čtyř struktur:&lt;br /&gt;
** '''sekvence:''' provádí posloupnost příkazů jeden po druhém&lt;br /&gt;
** '''větvení:''' jeden nebo více příkazů je vykonán v závislosti na stavu programu (obvykle vyjadřováno klíčovými slovy if-else)&lt;br /&gt;
** '''cyklus:''' příkazy jsou prováděny do té doby, dokud program nedosáhne nějakého stavu (obvykle vyjadřováno klíčovými slovy while, for)&lt;br /&gt;
** '''podprogram:''' příkazy jsou shromažďovány do samostatného bloku, který má své jméno a definuje vstupy a výstupy. Tento blok (funkci nebo proceduru) lze z jiné části programu volat jeho jménem (identifikátorem). Funkce s návratovou hodnotou lze zařadit do výrazu.&lt;br /&gt;
* Nejznámějším důsledkem těchto zásad je snaha zabránit nebo v závislosti na programovacím jazyce alespoň omezit používání příkazu skoku. Programový kód nerespektující výše uvedené zásady se často hanlivě označuje jako „špagetový kód“.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sekvence ==&lt;br /&gt;
* Sekvence představuje posloupnost jednotlivých příkazů řazených v pořadí za sebou tak, jak mají být vykonány. Uzavřená sekvence se nazývá '''složený příkaz nebo blok.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Větvení ==&lt;br /&gt;
* Větvení umožňuje volit další postup řešení na základě splnění nebo nesplnění určité podmínky. Z obecného pohledu ale nemusí být vždy testována podmínka, neboť rozhodující pro větvení je až logická hodnota (true/false), která je výsledkem zmíněné podmínky. Větvit lze tedy i jen na základě hodnoty v logické proměnné. Větvení může být realizováno jako neúplný podmíněný příkaz, úplný podmíněný příkaz nebo jako přepínač.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Neúplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:neuplny_podm_prikaz.jpg]] &lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S. Není-li podmínka splněna, nic se neprovádí a běh programu pokračuje dále.&lt;br /&gt;
&amp;lt;pre&amp;gt;int x;&lt;br /&gt;
if (x &amp;gt; 0) MessageBox.Show(&amp;quot;Kladné číslo&amp;quot;);&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''Úplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:uplny_podm_prikaz.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S1. Není-li podmínka splněna, provede se sekvence S2.&lt;br /&gt;
&amp;lt;pre&amp;gt;int x;&lt;br /&gt;
if (x &amp;gt; 0)&lt;br /&gt;
{&lt;br /&gt;
MessageBox.Show(&amp;quot;Je přirozené číslo&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
else&lt;br /&gt;
{&lt;br /&gt;
MessageBox.Show(&amp;quot;Není přirozené číslo&amp;quot;);&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Cyklus ==&lt;br /&gt;
* Slouží k vyjádření opakujících se operací. Počet opakování může být předem zadán, nebo je odvozen od splnění některé dané podmínky. Existují tak tři základní druhy cyklu: '''cyklus s výčtem hodnot, cyklus s podmínkou na počátku a cyklus s podmínkou na konci.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''1) Cyklus s výčtem hodnot (cyklus s předepsaným počtem opakování)'''&lt;br /&gt;
[[Soubor:cyklus_s_vyctem_hodnot.jpg]]&lt;br /&gt;
&lt;br /&gt;
Tento druh cyklu se provádí tolikrát, kolikrát je opakování cyklu předepsáno. Předpis je dán definicí dolní hodnoty p, kroku a horní hodnoty p (případně podmínky, která musí být po celou dobu vykonávání cyklu splněna).&lt;br /&gt;
&amp;lt;pre&amp;gt;for (int i = 0; i &amp;lt; 10; i++) x[i] = nahoda.next(0, 11);&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''2) Cyklus s podmínkou na začátku'''&lt;br /&gt;
[[Soubor:podm_zac.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Je-li podmínka splněna, provedou se příkazy sekvencí C a následuje návrat na začátek cyklu. Tato se opakuje, pokud stále platí podmínka P. Z uvedeného je zřejmé, že v sekvenci S musí být operace, která mění některou z hodnot logického výrazu podmínky P. Kdyby tomu tak nebylo, cyklus by nemohl skončit. Při dosažení neplatnosti podmínky P cyklus skončí.&lt;br /&gt;
&lt;br /&gt;
Je tedy zřejmé, že cyklus s podmínkou na začátku (někdy zvaný cyklus POKUD) nemusí proběhnout vůbec (je-li podmínka P nesplněna před vstupem do cyklu), nebo jednou, či n-krát. V případě chybného naprogramování cyklu může dojít k zacyklení, což nastane, pokud podmínka P platí stále.&lt;br /&gt;
&amp;lt;pre&amp;gt;int i=0;&lt;br /&gt;
while (i&amp;lt;10)&lt;br /&gt;
{&lt;br /&gt;
x[i] = nahoda.next(0, 11);&lt;br /&gt;
i++;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''3) Cyklus s podmínkou na konci'''&lt;br /&gt;
[[Soubor:podm_kon.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je provedena sekvence S. Poté je vyhodnocena podmínka, pokud platí, sekvence S se znovu neprovádí a běh programu pokračuje za cyklem. Není-li podmínka splněna opakuje se sekvence S a to tak dlouho, dokud podmínka stále neplatí. Z uvedeného je zřejmé, že v sekvenci S musí být operace, která mění některou z hodnot logického výrazu podmínky P. Kdyby tomu tak nebylo, cyklus by nemohl skončit.&lt;br /&gt;
&lt;br /&gt;
Tento cyklus se někdy nazývá cyklus DOKUD, čímž se myslí - dokud podmínka neplatí, opakuje se sekvence S. Tento cyklus proběhne vždy alespoň jednou. Četnost výskytu potřeby tohoto typu cyklu v programech je asi desetkrát menší než cyklu s podmínkou na začátku.&lt;br /&gt;
&amp;lt;pre&amp;gt;int i=0;&lt;br /&gt;
do&lt;br /&gt;
{&lt;br /&gt;
x[i] = nahoda.next(0, 11);&lt;br /&gt;
i++;&lt;br /&gt;
} while (i&amp;lt;10)&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Capik</name></author>	</entry>

	<entry>
		<id>http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury</id>
		<title>Programové struktury</title>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury"/>
				<updated>2012-04-21T11:36:09Z</updated>
		
		<summary type="html">&lt;p&gt;Capik: /* Cyklus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* způsob zápisu algoritmu pomocí VD &lt;br /&gt;
* událostní funkce &lt;br /&gt;
* obecná funkce, objektová metoda, předávání parametrů funkci, návratová hodnota &lt;br /&gt;
* binární větvení &lt;br /&gt;
* cyklus (podmíněný, s definovaným počtem opakování) &lt;br /&gt;
* objekt &lt;br /&gt;
* příklady programů ve vybraném jazyce&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Strukturované programování (strukturovaný programovací jazyk) ==&lt;br /&gt;
* označuje v informatice programovací techniku, kdy se implementovaný algoritmus rozděluje na dílčí úlohy (tzn. na procedury či funkce, které se spojují v jeden celek). Na strukturované programování lze nahlížet jako na imperativní programování za využití vybraných řídicích. U strukturovaného programování se vyhýbáme řídicímu příkazu skoku.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Strukturované programování definuje, že se program může skládat pouze z následujících čtyř struktur:&lt;br /&gt;
** '''sekvence:''' provádí posloupnost příkazů jeden po druhém&lt;br /&gt;
** '''větvení:''' jeden nebo více příkazů je vykonán v závislosti na stavu programu (obvykle vyjadřováno klíčovými slovy if-else)&lt;br /&gt;
** '''cyklus:''' příkazy jsou prováděny do té doby, dokud program nedosáhne nějakého stavu (obvykle vyjadřováno klíčovými slovy while, for)&lt;br /&gt;
** '''podprogram:''' příkazy jsou shromažďovány do samostatného bloku, který má své jméno a definuje vstupy a výstupy. Tento blok (funkci nebo proceduru) lze z jiné části programu volat jeho jménem (identifikátorem). Funkce s návratovou hodnotou lze zařadit do výrazu.&lt;br /&gt;
* Nejznámějším důsledkem těchto zásad je snaha zabránit nebo v závislosti na programovacím jazyce alespoň omezit používání příkazu skoku. Programový kód nerespektující výše uvedené zásady se často hanlivě označuje jako „špagetový kód“.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sekvence ==&lt;br /&gt;
* Sekvence představuje posloupnost jednotlivých příkazů řazených v pořadí za sebou tak, jak mají být vykonány. Uzavřená sekvence se nazývá '''složený příkaz nebo blok.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Větvení ==&lt;br /&gt;
* Větvení umožňuje volit další postup řešení na základě splnění nebo nesplnění určité podmínky. Z obecného pohledu ale nemusí být vždy testována podmínka, neboť rozhodující pro větvení je až logická hodnota (true/false), která je výsledkem zmíněné podmínky. Větvit lze tedy i jen na základě hodnoty v logické proměnné. Větvení může být realizováno jako neúplný podmíněný příkaz, úplný podmíněný příkaz nebo jako přepínač.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Neúplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:neuplny_podm_prikaz.jpg]] &lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S. Není-li podmínka splněna, nic se neprovádí a běh programu pokračuje dále.&lt;br /&gt;
&amp;lt;pre&amp;gt;int x;&lt;br /&gt;
if (x &amp;gt; 0) MessageBox.Show(&amp;quot;Kladné číslo&amp;quot;);&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''Úplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:uplny_podm_prikaz.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S1. Není-li podmínka splněna, provede se sekvence S2.&lt;br /&gt;
&amp;lt;pre&amp;gt;int x;&lt;br /&gt;
if (x &amp;gt; 0)&lt;br /&gt;
{&lt;br /&gt;
MessageBox.Show(&amp;quot;Je přirozené číslo&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
else&lt;br /&gt;
{&lt;br /&gt;
MessageBox.Show(&amp;quot;Není přirozené číslo&amp;quot;);&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Cyklus ==&lt;br /&gt;
* Slouží k vyjádření opakujících se operací. Počet opakování může být předem zadán, nebo je odvozen od splnění některé dané podmínky. Existují tak tři základní druhy cyklu: '''cyklus s výčtem hodnot, cyklus s podmínkou na počátku a cyklus s podmínkou na konci.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''1) Cyklus s výčtem hodnot (cyklus s předepsaným počtem opakování)'''&lt;br /&gt;
[[Soubor:cyklus_s_vyctem_hodnot.jpg]]&lt;br /&gt;
&lt;br /&gt;
Tento druh cyklu se provádí tolikrát, kolikrát je opakování cyklu předepsáno. Předpis je dán definicí dolní hodnoty p, kroku a horní hodnoty p (případně podmínky, která musí být po celou dobu vykonávání cyklu splněna).&lt;br /&gt;
&amp;lt;pre&amp;gt;for (int i = 0; i &amp;lt; 10; i++) x[i] = nahoda.next(0, 11);&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''2) Cyklus s podmínkou na začátku'''&lt;br /&gt;
[[Soubor:podm_zac.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Je-li podmínka splněna, provedou se příkazy sekvencí C a následuje návrat na začátek cyklu. Tato se opakuje, pokud stále platí podmínka P. Z uvedeného je zřejmé, že v sekvenci S musí být operace, která mění některou z hodnot logického výrazu podmínky P. Kdyby tomu tak nebylo, cyklus by nemohl skončit. Při dosažení neplatnosti podmínky P cyklus skončí.&lt;br /&gt;
&lt;br /&gt;
Je tedy zřejmé, že cyklus s podmínkou na začátku (někdy zvaný cyklus POKUD) nemusí proběhnout vůbec (je-li podmínka P nesplněna před vstupem do cyklu), nebo jednou, či n-krát. V případě chybného naprogramování cyklu může dojít k zacyklení, což nastane, pokud podmínka P platí stále.&lt;br /&gt;
&amp;lt;pre&amp;gt;int i=0;&lt;br /&gt;
while (i&amp;lt;10)&lt;br /&gt;
{&lt;br /&gt;
x[i] = nahoda.next(0, 11);&lt;br /&gt;
i++;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''2) Cyklus s podmínkou na konci'''&lt;br /&gt;
[[Soubor:podm_kon.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je provedena sekvence S. Poté je vyhodnocena podmínka, pokud platí, sekvence S se znovu neprovádí a běh programu pokračuje za cyklem. Není-li podmínka splněna opakuje se sekvence S a to tak dlouho, dokud podmínka stále neplatí. Z uvedeného je zřejmé, že v sekvenci S musí být operace, která mění některou z hodnot logického výrazu podmínky P. Kdyby tomu tak nebylo, cyklus by nemohl skončit.&lt;br /&gt;
&lt;br /&gt;
Tento cyklus se někdy nazývá cyklus DOKUD, čímž se myslí - dokud podmínka neplatí, opakuje se sekvence S. Tento cyklus proběhne vždy alespoň jednou. Četnost výskytu potřeby tohoto typu cyklu v programech je asi desetkrát menší než cyklu s podmínkou na začátku.&lt;br /&gt;
&amp;lt;pre&amp;gt;int i=0;&lt;br /&gt;
do&lt;br /&gt;
{&lt;br /&gt;
x[i] = nahoda.next(0, 11);&lt;br /&gt;
i++;&lt;br /&gt;
} while (i&amp;lt;10)&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Capik</name></author>	</entry>

	<entry>
		<id>http://maturitait4.iunas.cz/index.php?title=Soubor:Podm_kon.jpg</id>
		<title>Soubor:Podm kon.jpg</title>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Soubor:Podm_kon.jpg"/>
				<updated>2012-04-21T11:35:42Z</updated>
		
		<summary type="html">&lt;p&gt;Capik: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Capik</name></author>	</entry>

	<entry>
		<id>http://maturitait4.iunas.cz/index.php?title=Soubor:Podm_zac.jpg</id>
		<title>Soubor:Podm zac.jpg</title>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Soubor:Podm_zac.jpg"/>
				<updated>2012-04-21T11:34:14Z</updated>
		
		<summary type="html">&lt;p&gt;Capik: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Capik</name></author>	</entry>

	<entry>
		<id>http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury</id>
		<title>Programové struktury</title>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury"/>
				<updated>2012-04-21T11:22:35Z</updated>
		
		<summary type="html">&lt;p&gt;Capik: /* Cyklus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* způsob zápisu algoritmu pomocí VD &lt;br /&gt;
* událostní funkce &lt;br /&gt;
* obecná funkce, objektová metoda, předávání parametrů funkci, návratová hodnota &lt;br /&gt;
* binární větvení &lt;br /&gt;
* cyklus (podmíněný, s definovaným počtem opakování) &lt;br /&gt;
* objekt &lt;br /&gt;
* příklady programů ve vybraném jazyce&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Strukturované programování (strukturovaný programovací jazyk) ==&lt;br /&gt;
* označuje v informatice programovací techniku, kdy se implementovaný algoritmus rozděluje na dílčí úlohy (tzn. na procedury či funkce, které se spojují v jeden celek). Na strukturované programování lze nahlížet jako na imperativní programování za využití vybraných řídicích. U strukturovaného programování se vyhýbáme řídicímu příkazu skoku.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Strukturované programování definuje, že se program může skládat pouze z následujících čtyř struktur:&lt;br /&gt;
** '''sekvence:''' provádí posloupnost příkazů jeden po druhém&lt;br /&gt;
** '''větvení:''' jeden nebo více příkazů je vykonán v závislosti na stavu programu (obvykle vyjadřováno klíčovými slovy if-else)&lt;br /&gt;
** '''cyklus:''' příkazy jsou prováděny do té doby, dokud program nedosáhne nějakého stavu (obvykle vyjadřováno klíčovými slovy while, for)&lt;br /&gt;
** '''podprogram:''' příkazy jsou shromažďovány do samostatného bloku, který má své jméno a definuje vstupy a výstupy. Tento blok (funkci nebo proceduru) lze z jiné části programu volat jeho jménem (identifikátorem). Funkce s návratovou hodnotou lze zařadit do výrazu.&lt;br /&gt;
* Nejznámějším důsledkem těchto zásad je snaha zabránit nebo v závislosti na programovacím jazyce alespoň omezit používání příkazu skoku. Programový kód nerespektující výše uvedené zásady se často hanlivě označuje jako „špagetový kód“.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sekvence ==&lt;br /&gt;
* Sekvence představuje posloupnost jednotlivých příkazů řazených v pořadí za sebou tak, jak mají být vykonány. Uzavřená sekvence se nazývá '''složený příkaz nebo blok.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Větvení ==&lt;br /&gt;
* Větvení umožňuje volit další postup řešení na základě splnění nebo nesplnění určité podmínky. Z obecného pohledu ale nemusí být vždy testována podmínka, neboť rozhodující pro větvení je až logická hodnota (true/false), která je výsledkem zmíněné podmínky. Větvit lze tedy i jen na základě hodnoty v logické proměnné. Větvení může být realizováno jako neúplný podmíněný příkaz, úplný podmíněný příkaz nebo jako přepínač.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Neúplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:neuplny_podm_prikaz.jpg]] &lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S. Není-li podmínka splněna, nic se neprovádí a běh programu pokračuje dále.&lt;br /&gt;
&amp;lt;pre&amp;gt;int x;&lt;br /&gt;
if (x &amp;gt; 0) MessageBox.Show(&amp;quot;Kladné číslo&amp;quot;);&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''Úplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:uplny_podm_prikaz.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S1. Není-li podmínka splněna, provede se sekvence S2.&lt;br /&gt;
&amp;lt;pre&amp;gt;int x;&lt;br /&gt;
if (x &amp;gt; 0)&lt;br /&gt;
{&lt;br /&gt;
MessageBox.Show(&amp;quot;Je přirozené číslo&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
else&lt;br /&gt;
{&lt;br /&gt;
MessageBox.Show(&amp;quot;Není přirozené číslo&amp;quot;);&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Cyklus ==&lt;br /&gt;
* Slouží k vyjádření opakujících se operací. Počet opakování může být předem zadán, nebo je odvozen od splnění některé dané podmínky. Existují tak tři základní druhy cyklu: '''cyklus s výčtem hodnot, cyklus s podmínkou na počátku a cyklus s podmínkou na konci.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''1) Cyklus s výčtem hodnot (cyklus s předepsaným počtem opakování)'''&lt;br /&gt;
[[Soubor:cyklus_s_vyctem_hodnot.jpg]]&lt;br /&gt;
&lt;br /&gt;
Tento druh cyklu se provádí tolikrát, kolikrát je opakování cyklu předepsáno. Předpis je dán definicí dolní hodnoty p, kroku a horní hodnoty p (případně podmínky, která musí být po celou dobu vykonávání cyklu splněna).&lt;/div&gt;</summary>
		<author><name>Capik</name></author>	</entry>

	<entry>
		<id>http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury</id>
		<title>Programové struktury</title>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury"/>
				<updated>2012-04-21T11:21:03Z</updated>
		
		<summary type="html">&lt;p&gt;Capik: /* Větvení */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* způsob zápisu algoritmu pomocí VD &lt;br /&gt;
* událostní funkce &lt;br /&gt;
* obecná funkce, objektová metoda, předávání parametrů funkci, návratová hodnota &lt;br /&gt;
* binární větvení &lt;br /&gt;
* cyklus (podmíněný, s definovaným počtem opakování) &lt;br /&gt;
* objekt &lt;br /&gt;
* příklady programů ve vybraném jazyce&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Strukturované programování (strukturovaný programovací jazyk) ==&lt;br /&gt;
* označuje v informatice programovací techniku, kdy se implementovaný algoritmus rozděluje na dílčí úlohy (tzn. na procedury či funkce, které se spojují v jeden celek). Na strukturované programování lze nahlížet jako na imperativní programování za využití vybraných řídicích. U strukturovaného programování se vyhýbáme řídicímu příkazu skoku.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Strukturované programování definuje, že se program může skládat pouze z následujících čtyř struktur:&lt;br /&gt;
** '''sekvence:''' provádí posloupnost příkazů jeden po druhém&lt;br /&gt;
** '''větvení:''' jeden nebo více příkazů je vykonán v závislosti na stavu programu (obvykle vyjadřováno klíčovými slovy if-else)&lt;br /&gt;
** '''cyklus:''' příkazy jsou prováděny do té doby, dokud program nedosáhne nějakého stavu (obvykle vyjadřováno klíčovými slovy while, for)&lt;br /&gt;
** '''podprogram:''' příkazy jsou shromažďovány do samostatného bloku, který má své jméno a definuje vstupy a výstupy. Tento blok (funkci nebo proceduru) lze z jiné části programu volat jeho jménem (identifikátorem). Funkce s návratovou hodnotou lze zařadit do výrazu.&lt;br /&gt;
* Nejznámějším důsledkem těchto zásad je snaha zabránit nebo v závislosti na programovacím jazyce alespoň omezit používání příkazu skoku. Programový kód nerespektující výše uvedené zásady se často hanlivě označuje jako „špagetový kód“.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sekvence ==&lt;br /&gt;
* Sekvence představuje posloupnost jednotlivých příkazů řazených v pořadí za sebou tak, jak mají být vykonány. Uzavřená sekvence se nazývá '''složený příkaz nebo blok.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Větvení ==&lt;br /&gt;
* Větvení umožňuje volit další postup řešení na základě splnění nebo nesplnění určité podmínky. Z obecného pohledu ale nemusí být vždy testována podmínka, neboť rozhodující pro větvení je až logická hodnota (true/false), která je výsledkem zmíněné podmínky. Větvit lze tedy i jen na základě hodnoty v logické proměnné. Větvení může být realizováno jako neúplný podmíněný příkaz, úplný podmíněný příkaz nebo jako přepínač.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Neúplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:neuplny_podm_prikaz.jpg]] &lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S. Není-li podmínka splněna, nic se neprovádí a běh programu pokračuje dále.&lt;br /&gt;
&amp;lt;pre&amp;gt;int x;&lt;br /&gt;
if (x &amp;gt; 0) MessageBox.Show(&amp;quot;Kladné číslo&amp;quot;);&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''Úplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:uplny_podm_prikaz.jpg]]&lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S1. Není-li podmínka splněna, provede se sekvence S2.&lt;br /&gt;
&amp;lt;pre&amp;gt;int x;&lt;br /&gt;
if (x &amp;gt; 0)&lt;br /&gt;
{&lt;br /&gt;
MessageBox.Show(&amp;quot;Je přirozené číslo&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
else&lt;br /&gt;
{&lt;br /&gt;
MessageBox.Show(&amp;quot;Není přirozené číslo&amp;quot;);&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Cyklus ==&lt;br /&gt;
* Slouží k vyjádření opakujících se operací. Počet opakování může být předem zadán, nebo je odvozen od splnění některé dané podmínky. Existují tak tři základní druhy cyklu: '''cyklus s výčtem hodnot, cyklus s podmínkou na počátku a cyklus s podmínkou na konci.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Cyklus s výčtem hodnot (cyklus s předepsaným počtem opakování)'''&lt;br /&gt;
[[Soubor:cyklus_s_vyctem_hodnot.jpg]]&lt;/div&gt;</summary>
		<author><name>Capik</name></author>	</entry>

	<entry>
		<id>http://maturitait4.iunas.cz/index.php?title=Soubor:Cyklus_s_vyctem_hodnot.jpg</id>
		<title>Soubor:Cyklus s vyctem hodnot.jpg</title>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Soubor:Cyklus_s_vyctem_hodnot.jpg"/>
				<updated>2012-04-21T11:20:45Z</updated>
		
		<summary type="html">&lt;p&gt;Capik: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Capik</name></author>	</entry>

	<entry>
		<id>http://maturitait4.iunas.cz/index.php?title=Soubor:Neuplny_podm_prikaz.jpg</id>
		<title>Soubor:Neuplny podm prikaz.jpg</title>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Soubor:Neuplny_podm_prikaz.jpg"/>
				<updated>2012-04-21T11:12:51Z</updated>
		
		<summary type="html">&lt;p&gt;Capik: načtena nová verze &amp;amp;quot;Soubor:Neuplny podm prikaz.jpg&amp;amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Capik</name></author>	</entry>

	<entry>
		<id>http://maturitait4.iunas.cz/index.php?title=Soubor:Uplny_podm_prikaz.jpg</id>
		<title>Soubor:Uplny podm prikaz.jpg</title>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Soubor:Uplny_podm_prikaz.jpg"/>
				<updated>2012-04-21T11:11:30Z</updated>
		
		<summary type="html">&lt;p&gt;Capik: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Capik</name></author>	</entry>

	<entry>
		<id>http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury</id>
		<title>Programové struktury</title>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury"/>
				<updated>2012-04-21T11:11:14Z</updated>
		
		<summary type="html">&lt;p&gt;Capik: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* způsob zápisu algoritmu pomocí VD &lt;br /&gt;
* událostní funkce &lt;br /&gt;
* obecná funkce, objektová metoda, předávání parametrů funkci, návratová hodnota &lt;br /&gt;
* binární větvení &lt;br /&gt;
* cyklus (podmíněný, s definovaným počtem opakování) &lt;br /&gt;
* objekt &lt;br /&gt;
* příklady programů ve vybraném jazyce&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Strukturované programování (strukturovaný programovací jazyk) ==&lt;br /&gt;
* označuje v informatice programovací techniku, kdy se implementovaný algoritmus rozděluje na dílčí úlohy (tzn. na procedury či funkce, které se spojují v jeden celek). Na strukturované programování lze nahlížet jako na imperativní programování za využití vybraných řídicích. U strukturovaného programování se vyhýbáme řídicímu příkazu skoku.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Strukturované programování definuje, že se program může skládat pouze z následujících čtyř struktur:&lt;br /&gt;
** '''sekvence:''' provádí posloupnost příkazů jeden po druhém&lt;br /&gt;
** '''větvení:''' jeden nebo více příkazů je vykonán v závislosti na stavu programu (obvykle vyjadřováno klíčovými slovy if-else)&lt;br /&gt;
** '''cyklus:''' příkazy jsou prováděny do té doby, dokud program nedosáhne nějakého stavu (obvykle vyjadřováno klíčovými slovy while, for)&lt;br /&gt;
** '''podprogram:''' příkazy jsou shromažďovány do samostatného bloku, který má své jméno a definuje vstupy a výstupy. Tento blok (funkci nebo proceduru) lze z jiné části programu volat jeho jménem (identifikátorem). Funkce s návratovou hodnotou lze zařadit do výrazu.&lt;br /&gt;
* Nejznámějším důsledkem těchto zásad je snaha zabránit nebo v závislosti na programovacím jazyce alespoň omezit používání příkazu skoku. Programový kód nerespektující výše uvedené zásady se často hanlivě označuje jako „špagetový kód“.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sekvence ==&lt;br /&gt;
* Sekvence představuje posloupnost jednotlivých příkazů řazených v pořadí za sebou tak, jak mají být vykonány. Uzavřená sekvence se nazývá '''složený příkaz nebo blok.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Větvení ==&lt;br /&gt;
* Větvení umožňuje volit další postup řešení na základě splnění nebo nesplnění určité podmínky. Z obecného pohledu ale nemusí být vždy testována podmínka, neboť rozhodující pro větvení je až logická hodnota (true/false), která je výsledkem zmíněné podmínky. Větvit lze tedy i jen na základě hodnoty v logické proměnné. Větvení může být realizováno jako neúplný podmíněný příkaz, úplný podmíněný příkaz nebo jako přepínač.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Neúplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:neuplny_podm_prikaz.jpg]] &lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S. Není-li podmínka splněna, nic se neprovádí a běh programu pokračuje dále.&lt;br /&gt;
&amp;lt;pre&amp;gt;int x;&lt;br /&gt;
if (x &amp;gt; 0) MessageBox.Show(&amp;quot;Kladné číslo&amp;quot;);&amp;lt;/pre&amp;gt;&lt;br /&gt;
* '''Úplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:uplny_podm_prikaz.jpg]]&lt;/div&gt;</summary>
		<author><name>Capik</name></author>	</entry>

	<entry>
		<id>http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury</id>
		<title>Programové struktury</title>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury"/>
				<updated>2012-04-21T11:05:16Z</updated>
		
		<summary type="html">&lt;p&gt;Capik: /* Větvení */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* způsob zápisu algoritmu pomocí VD &lt;br /&gt;
* událostní funkce &lt;br /&gt;
* obecná funkce, objektová metoda, předávání parametrů funkci, návratová hodnota &lt;br /&gt;
* binární větvení &lt;br /&gt;
* cyklus (podmíněný, s definovaným počtem opakování) &lt;br /&gt;
* objekt &lt;br /&gt;
* příklady programů ve vybraném jazyce&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Strukturované programování (strukturovaný programovací jazyk) ==&lt;br /&gt;
* označuje v informatice programovací techniku, kdy se implementovaný algoritmus rozděluje na dílčí úlohy (tzn. na procedury či funkce, které se spojují v jeden celek). Na strukturované programování lze nahlížet jako na imperativní programování za využití vybraných řídicích. U strukturovaného programování se vyhýbáme řídicímu příkazu skoku.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Strukturované programování definuje, že se program může skládat pouze z následujících čtyř struktur:&lt;br /&gt;
** '''sekvence:''' provádí posloupnost příkazů jeden po druhém&lt;br /&gt;
** '''větvení:''' jeden nebo více příkazů je vykonán v závislosti na stavu programu (obvykle vyjadřováno klíčovými slovy if-else)&lt;br /&gt;
** '''cyklus:''' příkazy jsou prováděny do té doby, dokud program nedosáhne nějakého stavu (obvykle vyjadřováno klíčovými slovy while, for)&lt;br /&gt;
** '''podprogram:''' příkazy jsou shromažďovány do samostatného bloku, který má své jméno a definuje vstupy a výstupy. Tento blok (funkci nebo proceduru) lze z jiné části programu volat jeho jménem (identifikátorem). Funkce s návratovou hodnotou lze zařadit do výrazu.&lt;br /&gt;
* Nejznámějším důsledkem těchto zásad je snaha zabránit nebo v závislosti na programovacím jazyce alespoň omezit používání příkazu skoku. Programový kód nerespektující výše uvedené zásady se často hanlivě označuje jako „špagetový kód“.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sekvence ==&lt;br /&gt;
* Sekvence představuje posloupnost jednotlivých příkazů řazených v pořadí za sebou tak, jak mají být vykonány. Uzavřená sekvence se nazývá '''složený příkaz nebo blok.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Větvení ==&lt;br /&gt;
* Větvení umožňuje volit další postup řešení na základě splnění nebo nesplnění určité podmínky. Z obecného pohledu ale nemusí být vždy testována podmínka, neboť rozhodující pro větvení je až logická hodnota (true/false), která je výsledkem zmíněné podmínky. Větvit lze tedy i jen na základě hodnoty v logické proměnné. Větvení může být realizováno jako neúplný podmíněný příkaz, úplný podmíněný příkaz nebo jako přepínač.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Neúplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:neuplny_podm_prikaz.jpg]] &lt;br /&gt;
&lt;br /&gt;
Nejprve je vyhodnocena podmínka P. Když je splněna, provede se sekvence S. Není-li podmínka splněna, nic se neprovádí a běh programu pokračuje dále.&lt;/div&gt;</summary>
		<author><name>Capik</name></author>	</entry>

	<entry>
		<id>http://maturitait4.iunas.cz/index.php?title=Soubor:Neuplny_podm_prikaz.jpg</id>
		<title>Soubor:Neuplny podm prikaz.jpg</title>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Soubor:Neuplny_podm_prikaz.jpg"/>
				<updated>2012-04-21T11:02:32Z</updated>
		
		<summary type="html">&lt;p&gt;Capik: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Capik</name></author>	</entry>

	<entry>
		<id>http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury</id>
		<title>Programové struktury</title>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury"/>
				<updated>2012-04-21T11:01:37Z</updated>
		
		<summary type="html">&lt;p&gt;Capik: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* způsob zápisu algoritmu pomocí VD &lt;br /&gt;
* událostní funkce &lt;br /&gt;
* obecná funkce, objektová metoda, předávání parametrů funkci, návratová hodnota &lt;br /&gt;
* binární větvení &lt;br /&gt;
* cyklus (podmíněný, s definovaným počtem opakování) &lt;br /&gt;
* objekt &lt;br /&gt;
* příklady programů ve vybraném jazyce&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Strukturované programování (strukturovaný programovací jazyk) ==&lt;br /&gt;
* označuje v informatice programovací techniku, kdy se implementovaný algoritmus rozděluje na dílčí úlohy (tzn. na procedury či funkce, které se spojují v jeden celek). Na strukturované programování lze nahlížet jako na imperativní programování za využití vybraných řídicích. U strukturovaného programování se vyhýbáme řídicímu příkazu skoku.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Strukturované programování definuje, že se program může skládat pouze z následujících čtyř struktur:&lt;br /&gt;
** '''sekvence:''' provádí posloupnost příkazů jeden po druhém&lt;br /&gt;
** '''větvení:''' jeden nebo více příkazů je vykonán v závislosti na stavu programu (obvykle vyjadřováno klíčovými slovy if-else)&lt;br /&gt;
** '''cyklus:''' příkazy jsou prováděny do té doby, dokud program nedosáhne nějakého stavu (obvykle vyjadřováno klíčovými slovy while, for)&lt;br /&gt;
** '''podprogram:''' příkazy jsou shromažďovány do samostatného bloku, který má své jméno a definuje vstupy a výstupy. Tento blok (funkci nebo proceduru) lze z jiné části programu volat jeho jménem (identifikátorem). Funkce s návratovou hodnotou lze zařadit do výrazu.&lt;br /&gt;
* Nejznámějším důsledkem těchto zásad je snaha zabránit nebo v závislosti na programovacím jazyce alespoň omezit používání příkazu skoku. Programový kód nerespektující výše uvedené zásady se často hanlivě označuje jako „špagetový kód“.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sekvence ==&lt;br /&gt;
* Sekvence představuje posloupnost jednotlivých příkazů řazených v pořadí za sebou tak, jak mají být vykonány. Uzavřená sekvence se nazývá '''složený příkaz nebo blok.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Větvení ==&lt;br /&gt;
* Větvení umožňuje volit další postup řešení na základě splnění nebo nesplnění určité podmínky. Z obecného pohledu ale nemusí být vždy testována podmínka, neboť rozhodující pro větvení je až logická hodnota (true/false), která je výsledkem zmíněné podmínky. Větvit lze tedy i jen na základě hodnoty v logické proměnné. Větvení může být realizováno jako neúplný podmíněný příkaz, úplný podmíněný příkaz nebo jako přepínač.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Neúplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:neuplny_podm_prikaz.jpg]]&lt;/div&gt;</summary>
		<author><name>Capik</name></author>	</entry>

	<entry>
		<id>http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury</id>
		<title>Programové struktury</title>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Programov%C3%A9_struktury"/>
				<updated>2012-04-21T10:59:51Z</updated>
		
		<summary type="html">&lt;p&gt;Capik: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* způsob zápisu algoritmu pomocí VD &lt;br /&gt;
* událostní funkce &lt;br /&gt;
* obecná funkce, objektová metoda, předávání parametrů funkci, návratová hodnota &lt;br /&gt;
* binární větvení &lt;br /&gt;
* cyklus (podmíněný, s definovaným počtem opakování) &lt;br /&gt;
* objekt &lt;br /&gt;
* příklady programů ve vybraném jazyce&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Strukturované programování (strukturovaný programovací jazyk) ==&lt;br /&gt;
* označuje v informatice programovací techniku, kdy se implementovaný algoritmus rozděluje na dílčí úlohy (tzn. na procedury či funkce, které se spojují v jeden celek). Na strukturované programování lze nahlížet jako na imperativní programování za využití vybraných řídicích. U strukturovaného programování se vyhýbáme řídicímu příkazu skoku.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Strukturované programování definuje, že se program může skládat pouze z následujících čtyř struktur:&lt;br /&gt;
** '''sekvence:''' provádí posloupnost příkazů jeden po druhém&lt;br /&gt;
** '''větvení:''' jeden nebo více příkazů je vykonán v závislosti na stavu programu (obvykle vyjadřováno klíčovými slovy if-else)&lt;br /&gt;
** '''cyklus:''' příkazy jsou prováděny do té doby, dokud program nedosáhne nějakého stavu (obvykle vyjadřováno klíčovými slovy while, for)&lt;br /&gt;
** '''podprogram:''' příkazy jsou shromažďovány do samostatného bloku, který má své jméno a definuje vstupy a výstupy. Tento blok (funkci nebo proceduru) lze z jiné části programu volat jeho jménem (identifikátorem). Funkce s návratovou hodnotou lze zařadit do výrazu.&lt;br /&gt;
* Nejznámějším důsledkem těchto zásad je snaha zabránit nebo v závislosti na programovacím jazyce alespoň omezit používání příkazu skoku. Programový kód nerespektující výše uvedené zásady se často hanlivě označuje jako „špagetový kód“.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sekvence ==&lt;br /&gt;
* Sekvence představuje posloupnost jednotlivých příkazů řazených v pořadí za sebou tak, jak mají být vykonány. Uzavřená sekvence se nazývá '''složený příkaz nebo blok.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Větvení ==&lt;br /&gt;
* Větvení umožňuje volit další postup řešení na základě splnění nebo nesplnění určité podmínky. Z obecného pohledu ale nemusí být vždy testována podmínka, neboť rozhodující pro větvení je až logická hodnota (true/false), která je výsledkem zmíněné podmínky. Větvit lze tedy i jen na základě hodnoty v logické proměnné. Větvení může být realizováno jako neúplný podmíněný příkaz, úplný podmíněný příkaz nebo jako přepínač.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Neúplný podmíněný příkaz'''&lt;br /&gt;
[[Soubor:neuplny_podm_prikaz.bmp]]&lt;/div&gt;</summary>
		<author><name>Capik</name></author>	</entry>

	<entry>
		<id>http://maturitait4.iunas.cz/index.php?title=Kundera,_M.:_%C5%BDert</id>
		<title>Kundera, M.: Žert</title>
		<link rel="alternate" type="text/html" href="http://maturitait4.iunas.cz/index.php?title=Kundera,_M.:_%C5%BDert"/>
				<updated>2012-04-19T15:48:48Z</updated>
		
		<summary type="html">&lt;p&gt;Capik: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==1) obecná charakteristika díla==&lt;br /&gt;
*'''literární druh:'''&lt;br /&gt;
**Epika&lt;br /&gt;
*'''literární žánr:'''&lt;br /&gt;
**Žert je románem společenským a politickým, ale i filozofickým. Svým rozpětím mezi tragédií a fraškou naznačuje mnohovýznamovost motivů, témat a postav.&lt;br /&gt;
&lt;br /&gt;
== 2) organizace jazykových prostředků ==&lt;br /&gt;
*'''forma:'''&lt;br /&gt;
**próza, jazyk spisovný, kniha je vyprávěna v ich-formě, vypravěči se střídají čtyři – Ludvík, Helena, Jaroslav, Kostka. Kapitoly jsou monology&lt;br /&gt;
== 3) tematická výstavba ==&lt;br /&gt;
*'''a) kompozice''' &lt;br /&gt;
**Román má sedm různě rozsáhlých a nepojmenovaných částí a ty se dále člení na nestejný počet číslovaných kapitol. Kniha je vyprávěna v ich-formě, vypravěči se střídají čtyři – Ludvík, Helena, Jaroslav, Kostka. Kapitoly jsou monology.&lt;br /&gt;
*'''b) hlavní postavy'''&lt;br /&gt;
**'''Ludvík Jahn:''' tato postava je klíčem ke smyslu celého románu. Ludvík není schopen (a nejpíše ani nechce) srovnat se se skutečností a svou minulostí. Se světem, který ho obklopuje, se ztotožňuje až ve chvíli, kdy si uvědomuje nebohost celé Jízdy králů. Právě ona nebohost je to tenoulinké pojítko, které mu umožní najít cestu zpátky - nebohá lidová slavnost a celé Slovácko, nebohý Jaroslav, nebohá maminka, které ani nemohl přijít na pohřeb, protože seděl ve vojenském kriminále...&lt;br /&gt;
**'''Helena:''' v této nenápadné postavě se zvláštním způsobem mísí sentimentalita a sebedůvěra. Právě ona byla drtivým soukolím života semleta nejdůkladněji, a proto představuje nejhorší možné ztroskotání lidské existence.&lt;br /&gt;
**'''Zemánek:''' Necitlivý, sobecký kariérista.&lt;br /&gt;
**'''Lucie:''' tato postava má svůj zvláštní půvab, jelikož je zahalena určitou rouškou tajemství a je zmýtizována. Vždyť ani Ludvík, kterému byla tak blízká, ji po letech nepoznává, a sám ji často označuje za &amp;quot;bohyni páry&amp;quot;, která má fantastickou moc nad jeho životním osudem. Ačkoliv je Ludvík jejím antipodem, byla to právě ona, kterou jako jedinou ženu skutečně a opravdově miloval.&lt;br /&gt;
**'''Kostka a Jaroslav:''' dva snílci, kteří odmítají uznat fakt, že jejich hýčkané vnitřní světy nemohou v kruté realitě obstát.&lt;br /&gt;
*'''c) místo a doba děje''' &lt;br /&gt;
**Děj se odehrává v letech 1948-63 střídavě v Praze a na Moravě, vyprávěn je částečně v přítomnosti, ale z větší části retrospektivně.&lt;br /&gt;
*'''d) obsah'''&lt;br /&gt;
Dějová linka se skládá ze čtyř dílčích příběhů, které vyprávějí různé postavy - Ludvík Jahn, Helena, Jaroslav a Kostka. Ve vnitřních monolozích hlavní postavy Jahna se přeneseme zpět do minulosti, kde jej, horlivého komunistu, zavrhla strana kvůli ztřeštěné pohlednici, kterou jako žert posílá své přítelkyni na komunistické školení. Text pohlednice zněl: &amp;quot;Optimismus je opium lidstva! Zdravý duch páchne blbostí. Ať žije Trockij! Ludvík.&amp;quot; Za trest byl vyloučen ze strany a ze studií a narukoval do oddílu černých, kde po dobu pěti let těžil uhlí. V této době si Ludvík našel svou jedinou a životní lásku, velmi obyčejnou dívku Lucii, která mu byla ustavičnou motivací. Po půl roce se spolu ale rozchází, protože Lucie není ochotná se s Ludvíkem milovat, a tak vše vrcholí ve vypjaté scéně, kdy Ludvík nebohou dívku dokonce uhodí. V této chvíli se děj posune o několik let dopředu a Ludvík, který po skončení vojenské služby úspěšně dostudoval, chystá pomstu. Chce se pomstít svému bývalému příteli Zemánkovi, který zinicioval jeho vyloučení ze strany a celý incident s pohlednicí nafoukl do obludných rozměrů tím, že svede jeho ženu Helenu.&lt;br /&gt;
Za tímto účelem se Ludvík vrací do svého rodného města, kde se má s nepřítelovou manželkou, která je do něj zamilovaná až po uši, setkat. Ludvík Helenu opravdu svede, nicméně jeho pomsta zkysne ve chvíli, kdy zjistí, že Helena a její manžel spolu už několik let nežijí jako muž a žena. Znechucený Ludvík, který Helenou ve skutečnosti opovrhuje, odchází. Zoufalá Helena spolyká tubu prášků v naději, že se otráví, ale nakonec si přivodí jen obrovské střevní potíže. Ludvíkovo bloudění a přemítání ho přivede až na náves, kde se koná tradiční lidová slavnost Jízda králů. Potkává tam přítele z mladých let, Jaroslava, snílka, který bezmezně miluje folklór a lidovou hudbu. Jaroslav je zdrcen, protože ho manželka a syn Vladimír, který měl jet v průvodu právě jako král, obelhali a syn místo sebe podstrčil kamaráda a sám odjel na motocyklové závody. Zkroušeného Ludvíka i Jaroslava spojuje nelehká životní situace, a proto se rozhodnou, že si večer půjdou zahrát do folkloristického souboru, kde působili zamlada. Ačkoliv se večer zpočátku daří, vše nakonec skončí katastrofou, protože Jaroslav musí být odvezen sanitkou do nemocnice - dostal infarkt.&lt;br /&gt;
&lt;br /&gt;
==4) hlavní myšlenka textu==&lt;br /&gt;
Román ukazuje absurditu doby od konce 40. do 60. let 20. století v komunistickém Československu (obecně v totalitním systému) a její ničivý vliv na lidské osudy.&lt;br /&gt;
&lt;br /&gt;
==5) orientační zasazení díla do literárně-historického kontextu==&lt;br /&gt;
Šedesátá léta minulého století&lt;br /&gt;
&lt;br /&gt;
==6) autor ==&lt;br /&gt;
Milan Kundera se narodil v roce 1929 v Brně. V roce 1948 vstoupil do KSČ, po dvou letech ho vyhodili, znovu mu bylo členství obnoveno v roce 1956. Zkraje 50. let tvořil budovatelskou poezii, nový režim vnímal idealisticky jako řada mladých autorů v té době. Později se však stal odpůrcem režimu, zejména po okupaci v roce 1968. V roce 1975 emigroval do Francie a v roce 1979 byl zbaven českého občanství. Ve Francii žije dodnes, do vlasti se vrací jen zřídka a vždy inkognito. K Česku je kritický a svá díla, která píše ve francouzštině, nenechá přeložit do češtiny. Mezi jeho další díla patří např. Valčík na rozloučenou, Nesnesitelná lehkost bytí a Nesmrtelnost.&lt;br /&gt;
&lt;br /&gt;
==7) zasazení díla do tvorby autora==&lt;br /&gt;
První Kunderův román&lt;br /&gt;
&lt;br /&gt;
==8) kritika ==&lt;br /&gt;
Tento román je kritikou hodnocen velmi kladně. Často je v souvislosti s Žertem citován výrok Louise Aragona, že &amp;quot;jde o jeden z největších románů století&amp;quot;&lt;/div&gt;</summary>
		<author><name>Capik</name></author>	</entry>

	</feed>