Řídící struktury programu
m (Oprava kategorie Programování) |
(Přidán zápis podmínek) |
||
Řádka 2: | Řádka 2: | ||
[[Category:Informatika]] | [[Category:Informatika]] | ||
[[Category:Programování]] | [[Category:Programování]] | ||
+ | |||
+ | |||
+ | |||
== Řídící struktury programovacích jazyků Java a PHP == | == Řídící struktury programovacích jazyků Java a PHP == | ||
Řádka 15: | Řádka 18: | ||
Dále uvádíme základní popis použití nejběžnějších řídících struktur. Jsme si vědomi, že '''následující text je velmi zjednodušený!''' | Dále uvádíme základní popis použití nejběžnějších řídících struktur. Jsme si vědomi, že '''následující text je velmi zjednodušený!''' | ||
+ | |||
Řádka 47: | Řádka 51: | ||
} | } | ||
</pre> | </pre> | ||
+ | |||
+ | |||
Řádka 93: | Řádka 99: | ||
Dále už je hodnota <code>$i == 15</code>, takže není splněna podmínka <code>$i < 15</code> a tedy se provádění cyklu ukončí. | Dále už je hodnota <code>$i == 15</code>, takže není splněna podmínka <code>$i < 15</code> a tedy se provádění cyklu ukončí. | ||
+ | |||
+ | |||
+ | |||
+ | == Zápis podmínek == | ||
+ | |||
+ | === Porovnání čísel === | ||
+ | * <code>$a == 5</code> | ||
+ | * <code>$a != 5</code> (není rovno) | ||
+ | * <code>$a < 5</code> | ||
+ | * <code>$a > 5</code> | ||
+ | * <code>$a <= 5</code> | ||
+ | * <code>$a >= 5</code> | ||
+ | |||
+ | === Porovnání textových řetězců === | ||
+ | * PHP: <code>strcmp($t, "text")</code> | ||
+ | * Java: <code>text.equals("text")</code> | ||
+ | |||
+ | === Logické funkce === | ||
+ | * PHP: <code>($a <= 5) AND ($b > 4)</code>, dále také <code>OR</code>, <code>XOR</code>, <code>NOT</code> | ||
+ | * Java i PHP: <code>(a <= 5) && ($b > 4)</code>, dále také <code>||</code>, <code>^</code>, <code>!</code> | ||
+ | |||
Verze z 7. 6. 2011, 10:25
Obsah |
Řídící struktury programovacích jazyků Java a PHP
Počítače von Neumannova typu provádí instrukce v takovém pořadí, v jakém jsou v operační paměti uloženy. Pokud chceme toto chování změnit, musíme použít speciální instrukci skoku. Ve vyšších programovacích jazycích se používají pro přehlednější zápis ustálené řídící struktury.
Řídící struktury vyšších programovacích jazyků:
- podmíněný příkaz (
if
) - cyklus
for
- cyklus
while
- cyklus
do-while
- + větvení (příkaz
switch
)
Dále uvádíme základní popis použití nejběžnějších řídících struktur. Jsme si vědomi, že následující text je velmi zjednodušený!
Podmíněný příkaz
Zápis:
if (PODMÍNKA) PŘÍKAZ [ else PŘÍKAZ ];
- PODMÍNKA:
- výraz, který vrací pravdivostní hodnotu (pravda nebo nepravda)
- PŘÍKAZ:
- obvykle se jedná o 'složený příkaz', tedy o posloupnost příkazů, ohraničenou složenými závorkami.
- větev
else
:- tento příkaz se provede, pokud podmínka není splněná.
- tato část příkazu ale nemusí být vůbec uvedena.
Příklady PHP
if ($vek < 15) { echo "POZOR! Přístupné až od 15 let!"; }
if ($hotovost > $cena) { $hotovost -= $cena; } else { die("Nákup nelze provést! Nemáme dostatek peněz."); }
Cyklus for
Zápis:
for (INICIALIZACE; PODMÍNKA; ÚPRAVA_ČÍTAČE) PŘÍKAZ;
Cyklus for
je v PHP a Javě hodně obecný, obvykle se ale používá tak, že definujeme řídící proměnnou (třeba i
), která postupně nabývá hodnot od 0 do maximální hodnoty. Pro každou hodnotu řídící proměnné pak provádíme příkaz, který obvykle tuto hodnotu nějak využívá.
- INICIALIZACE:
- příkaz, který se provede na začátku, před prováděním cyklu.
- obvykle nastaví počáteční hodnotu řídící proměnné cyklu.
- ÚPRAVA_ČÍTAČE:
- příkaz, který se provede po každém provedení PŘÍKAZU. Obvykle zvýší či sníží hodnotu řídící proměnné.
- PODMÍNKA:
- výraz, který vrací pravdivostní hodnotu (pravda nebo nepravda)
- PŘÍKAZ:
- obvykle se jedná o 'složený příkaz', tedy o posloupnost příkazů, ohraničenou složenými závorkami.
Příklady PHP
for ($i = 0; $i < 15; $i++) { echo "<p>Průchod číslo $i.</p>"; }
Tento příklad vlastně provede následující kód:
$i = 0; echo "<p>Průchod číslo $i.</p>"; // $i == 0 $i++; echo "<p>Průchod číslo $i.</p>"; // $i == 1 $i++; . : : echo "<p>Průchod číslo $i.</p>"; // $i == 13 $i++; echo "<p>Průchod číslo $i.</p>"; // $i == 14 $i++;
Dále už je hodnota $i == 15
, takže není splněna podmínka $i < 15
a tedy se provádění cyklu ukončí.
Zápis podmínek
Porovnání čísel
-
$a == 5
-
$a != 5
(není rovno) -
$a < 5
-
$a > 5
-
$a <= 5
-
$a >= 5
Porovnání textových řetězců
- PHP:
strcmp($t, "text")
- Java:
text.equals("text")
Logické funkce
- PHP:
($a <= 5) AND ($b > 4)
, dále takéOR
,XOR
,NOT
- Java i PHP:
(a <= 5) && ($b > 4)
, dále také||
,^
,!
Zdroje:
- The Java Tutorials [online]. 1995, 2011 [cit. 2011-06-07]. Control Flow Statements.
- ARCANIS. Výuka PHP a MySQL [online]. Třeboň : 2008 [cit. 2011-06-07]. Řídící struktury.
- Dostupné z WWW: <http://arcanis.argon.cz/docs/seminarka1/index.php?incl=lekce_5>.
- ARCANIS. Výuka PHP a MySQL [online]. Třeboň : 2008 [cit. 2011-06-07]. Cykly.
- Dostupné z WWW: <http://arcanis.argon.cz/docs/seminarka1/index.php?incl=lekce_6>.