Řídící struktury programu

Z MiS
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
(Přidány příklady v Javě a odpovídající kategorie)
(Přidán odkaz na foreach a nadpisy pro switch a do while)
Řádka 119: Řádka 119:
 
     System.out.println("Průchod číslo "+i+".");
 
     System.out.println("Průchod číslo "+i+".");
 
  }
 
  }
 +
 +
 +
 +
 +
== Cyklus <code>for each</code> ==
 +
* Pro průchod přes všechny prvky kontejneru je lépe využít cyklus <code>for each</code>.
 +
* Více viz: [[Java:_Kontejnery#Proch.C3.A1zen.C3.AD_kontejneru| Java: Kontejnery]].
  
  
Řádka 182: Řádka 189:
 
  }
 
  }
  
 +
 +
 +
== Cyklus <code>do while</code> ==
 +
 +
 +
 +
 +
== Příkaz <code>switch</code> ==
  
  
Řádka 210: Řádka 225:
 
; Související stránky:
 
; Související stránky:
 
* [[Programovací_jazyky]]
 
* [[Programovací_jazyky]]
 +
* [[Java:_Kontejnery#Proch.C3.A1zen.C3.AD_kontejneru]]

Verze z 6. 6. 2016, 22:14


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ů:

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 ];

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.");
 }

Příklady Java

if (vek < 15) {
    System.out.println("POZOR! Přístupné až od 15 let!");
}
if (zakaznik.getHotovost() > cena) {
    zakaznik.zaplat(cena);
} else {
    System.err.println("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á.

Řídící proměnné se někdy také říká „čítač“.

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čí.


Příklady Java

for (int i = 0; i < 15; i++) {
    System.out.println("Průchod číslo "+i+".");
}



Cyklus for each



Cyklus while

Zápis:

while (PODMÍNKA) PŘÍKAZ;

Cyklus while provádí zadaný PŘÍKAZ tak dlouho, dokud je splněna PODMÍNKA.

Pozn.: Cyklus for jazyků Java a PHP lze přepsat pomocí cyklu while následujícím způsobem:

INICIALIZACE;
while (PODMÍNKA) {
    PŘÍKAZ;
    ÚPRAVA_ČÍTAČE;
}

Příklady PHP

 $i = 0;
 while ($i < 15) {
     echo "<p>Průchod číslo $i.</p>";
     $i++;
 }

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čí.

Příklady Java

int i = 0;
while (i < 15) {
    System.out.println("Průchod číslo "+i+".");
    i++;
}


Cyklus do while

Příkaz switch

Cvičení

1. Hodnoty funkce

2. Průchod pole



Zdroje:

  1. 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>.
  2. 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>.
  3. 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>.
Související stránky
Osobní nástroje
Jmenné prostory
Varianty
Akce
Výuka
Navigace
Nástroje