Iterace

Z Wikipedie, otevřené encyklopedie

Skočit na: Navigace, Hledání

Slovo iterace může být použito ve stejném významu jako opakování (lat. iteretur – opakovat).

Základním principem iterace je opakování určitého procesu v měnícím se kontextu. Uplatňuje se především v dynamických jevech.

Základní typy iterací:

  • přenesení postupu do jiného kontextu (například jazyk popisuje jevy okolního světa, metajazyk popisuje jazyk)
  • řešení problému postupným opakováním s dalším a dalším přibližováním se žádoucímu výsledku; každé další opakování mění kontext, ve kterém probíhá další krok
  • prosté opakování (sériová výroba)

Obsah

[editovat] Matematika

Iterace v matematice znamená proces opakovaného použití funkce.

y = f(x)

v dalším kroku se použije výsledek

z = f(y)

Tato metoda se používá při řešení celé řady matematických problémů.

[editovat] Příklad: Transcendentní rovnice

Jednoduchým příkladem k demonstraci iterace je numerické řešení transcendentní rovnice x = cos(x), jejíž analytické řešení pomocí postupných úprav a známých vztahů je nemožné (nebo aspoň velmi obtížné). Pro přibližné řešení stačí vhodně zvolit počáteční hodnotu x (např. x0 = 1), iterovat (xi + 1 = cosxi) a sledovat, jak se mění hodnota x.

var x := 1
print x
for i from 1 to 50 {
  x := cos(x)
  print x
}

Je vidět, že zhruba po 25 krocích se již hodnota x vypsaná na 4 desetinná místa nemění:

1.0000 → 0.5403   0.8576   0.6543   0.7935   0.7014   0.7640
0.7221   0.7504   0.7314   0.7442   0.7356   0.7414   0.7375
0.7401   0.7384   0.7396   0.7388   0.7393   0.7389   0.7392
0.7390   0.7391   0.7391   0.7391   0.7391 → ...

[editovat] Počítače

Iterace v programování znamená opakované volání funkce v počítačovém programu. Zvláštní formou iterace je rekurze.

Ukázka iterace:

 var i, a := 0        // inicializace před iterací
 for i from 1 to 3 {  // smyčka se opakuje třikrát
     a := a + i       // zvýšit hodnotu o hodnotu i
 }
 print a              // vytisknout číslo 6

V tomto úseku programu se hodnota proměnné i postupně mění a nabývá hodnot 1, 2 a 3. Taková postupná změna je charakteristickým znakem iterace.

[editovat] Související články