Slovník | Vyhledávání | Mapa webu
 
Základy informatiky pro biologyVýpočetní matematické systémy Výuka jazyka R Programování v R Příkazy cyklů

Logo Matematická biologie

Příkazy cyklů

Někdy potřebujeme opakovaně vyhodnocovat příkaz nebo skupinu příkazů. Je třeba si dát pozor na správnou definici konce cyklu, v opačném případě může dojít k zacyklení. Mezi nejznámější příkazy cyklů patří funkce for, while a repeat.

for (promenna in vyraz) {prikaz}
Provede sérii příkazů prikaz, promenna označuje indexační proměnnou, vyraz může být vektor nebo seznam, pro jehož každou složku je prikaz vyhodnocen. Cyklus for je vhodné používat tehdy, když předem víme, kolik opakování chceme provést. 

> for (i in 1:5) {cat("pruchod cyklem", i, "n")} funkce cat() zřetězí a vytiskne své argumenty
pruchod cyklem 1
pruchod cyklem 2
pruchod cyklem 3
pruchod cyklem 4
pruchod cyklem 5

Někdy ovšem předem nevíme, kolikrát bude třeba cyklus opakovat, a počet opakování závisí na splnění určité podmínky. V těchto případech použijeme cyklus while:
while (podminka) {prikaz}
Stejně jako u výrazu ifpodminka je výraz, který po vyhodnocení vrací logickou hodnotu TRUE nebo FALSE. V případě splnění podmínky podminka cyklus provede prikaz.

> i <- 1
> while (i %in% c(1:5)) {print(i); i <- i + 1}
[1]    1
[1]    2
[1]    3
[1]    4
[1]    5

Cyklus repeat opakuje vyhodnocování příkazů prikaz do té doby, dokud nedosáhne konce. Pro ukončení se používá příkaz break, který je součástí posloupnosti příkazů prikaz. Syntaxe vypadá následovně:
repeat {prikaz}

Poznámka. Příkaz break lze použít i pro ukončení cyklů for a while.

> i <- 0
> repeat{
+ print(i)
+ i <- i + 1
+ if (i == 5) {break}}
[1]    0
[1]    1
[1]    2
[1]    3
[1]    4

 

 


1výraz způsobí přechod na nový řádek

 
vytvořil Institut biostatistiky a analýz Lékařské fakulty Masarykovy univerzity