Řídící struktury programu
| m (Úprava citace) |  (Doplnění dalších zdrojů) | ||
| Řádka 98: | Řádka 98: | ||
| == Zdroje: == | == Zdroje: == | ||
| − | # The Java Tutorials [online]. 1995, 2011 [cit. 2011-06-07]. Control Flow Statements. Dostupné z WWW: [http://download.oracle.com/javase/tutorial/java/nutsandbolts/flow.html <http://download.oracle.com/javase/tutorial/java/nutsandbolts/flow.html>]. | + | # The Java Tutorials [online]. 1995, 2011 [cit. 2011-06-07]. ''Control Flow Statements''.   | 
| + | #:Dostupné z WWW: [http://download.oracle.com/javase/tutorial/java/nutsandbolts/flow.html <http://download.oracle.com/javase/tutorial/java/nutsandbolts/flow.html>]. | ||
| + | # 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 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 http://arcanis.argon.cz/docs/seminarka1/index.php?incl=lekce_6]>. | ||
Verze z 7. 6. 2011, 08:34
| 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čí.
 
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>.
 
