Bucles en R (for, while, repeat)

En la programación R, necesitamos una estructura de control para ejecutar un bloque de código varias veces. Los bucles pertenecen a la clase de los conceptos de programación más fundamentales y fuertes. Un bucle es una sentencia de control que permite múltiples ejecuciones de una sentencia o un conjunto de sentencias. La palabra ‘bucle’ significa ciclar o iterar. 

Un bucle hace una consulta, en la estructura de bucle. Si la respuesta a esa consulta requiere una acción, se ejecutará. La misma consulta se realiza una y otra vez hasta que se toman medidas adicionales. Cada vez que se realiza la consulta en el ciclo, se conoce como una iteración del ciclo. Hay dos componentes de un ciclo, la instrucción de control y el cuerpo del ciclo. La sentencia de control controla la ejecución de sentencias dependiendo de la condición y el cuerpo del bucle consiste en el conjunto de sentencias a ejecutar.

Para ejecutar las líneas de código idénticas varias veces en un programa, un programador puede simplemente usar un bucle. 

Hay tres tipos de bucle en la programación R: 

  • En bucle
  • Mientras bucle
  • Repetir bucle

Bucle for en R

Es un tipo de declaración de control que permite construir fácilmente un ciclo que tiene que ejecutar declaraciones o un conjunto de declaraciones varias veces. For loop se usa comúnmente para iterar sobre los elementos de una secuencia. Es un bucle controlado por entrada, en este bucle primero se prueba la condición de prueba, luego se ejecuta el cuerpo del bucle, el cuerpo del bucle no se ejecutaría si la condición de prueba es falsa. 

R – Para la sintaxis del bucle: 

for (value in sequence)
{
  statement
}

Para diagrama de flujo de bucle: 

For Loop Flow Diagram

A continuación se muestran algunos programas para ilustrar el uso del bucle for en la programación R.

Ejemplo 1: Programa para mostrar números del 1 al 5 usando bucle for en R. 

R

# R program to demonstrate the use of for loop
 
# using for loop
for (val in 1: 5)
{
    # statement
    print(val)
}

Producción: 

[1] 1
[1] 2
[1] 3
[1] 4
[1] 5

Aquí, el bucle for se itera sobre una secuencia que tiene números del 1 al 5. En cada iteración, se muestra cada elemento de la secuencia. 

Ejemplo 2: Programa para mostrar los días de una semana. 

R

# R program to illustrate
# application of for loop
 
# assigning strings to the vector
week < - c('Sunday',
           'Monday',
           'Tuesday',
           'Wednesday',
           'Thursday',
           'Friday',
           'Saturday')
 
# using for loop to iterate
# over each string in the vector
for (day in week)
{
 
    # displaying each string in the vector
    print(day)
}

Producción: 

[1] "Sunday"
[1] "Monday"
[1] "Tuesday"
[1] "Wednesday"
[1] "Thusrday"
[1] "Friday"
[1] "Saturday"

En el programa anterior, inicialmente, todos los días (strings) de la semana se asignan al vector semana. Luego, for loop se usa para iterar sobre cada string en una semana. En cada iteración, se muestra cada día de la semana. 

Mientras bucle en R 

Es un tipo de declaración de control que ejecutará una declaración o un conjunto de declaraciones repetidamente a menos que la condición dada se vuelva falsa. También es un bucle controlado por entrada, en este bucle primero se prueba la condición de prueba, luego se ejecuta el cuerpo del bucle, el cuerpo del bucle no se ejecutaría si la condición de prueba es falsa. 

R – Mientras que la sintaxis del bucle: 

while ( condition ) 
{
  statement
}

Mientras diagrama de flujo de bucle: 

While loop Flow Diagram

A continuación se muestran algunos programas para ilustrar el uso del bucle while en la programación R.

Ejemplo 1: Programa para mostrar números del 1 al 5 usando el ciclo while en R. 

R

# R program to demonstrate the use of while loop
 
val = 1
 
# using while loop
while (val <= 5)
{
    # statements
    print(val)
    val = val + 1
}

Producción: 

[1] 1
[1] 2
[1] 3
[1] 4
[1] 5

Inicialmente, el valor de la variable se inicializa en 1. En cada iteración del ciclo while, se verifica la condición y se muestra el valor de val y luego se incrementa hasta que se convierte en 5 y la condición se vuelve falsa, el ciclo finaliza. 

Ejemplo 2: Programa para calcular el factorial de un número. 

R

# R program to illustrate
# application of while loop
 
# assigning value to the variable
# whose factorial will be calculated
n < - 5
 
# assigning the factorial variable
# and iteration variable to 1
factorial < - 1
i < - 1
 
# using while loop
while (i <= n)
{
 
    # multiplying the factorial variable
    # with the iteration variable
    factorial = factorial * i
 
    # incrementing the iteration variable
    i = i + 1
}
 
# displaying the factorial
print(factorial)

Producción: 

[1] 120

Aquí, al principio, la variable n se asigna a 5 cuyo factorial se va a calcular, luego la variable i y el factorial se asignan a 1. i se usará para iterar sobre el ciclo y factorial se usará para calcular el factorial. En cada iteración del bucle, se comprueba la condición, es decir, i debe ser menor o igual a 5, y después de que el factorial se multiplique con el valor de i, entonces i se incrementa. Cuando i se convierte en 5, el bucle finaliza y el factorial de 5, es decir, 120, se muestra más allá del alcance del bucle. 

Repetir bucle en R

Es un ciclo simple que ejecutará la misma declaración o un grupo de declaraciones repetidamente hasta que se encuentre la condición de parada. El ciclo de repetición no tiene ninguna condición para terminar el ciclo, un programador debe colocar específicamente una condición dentro del cuerpo del ciclo y usar la declaración de una declaración de ruptura para terminar este ciclo. Si no hay ninguna condición presente en el cuerpo del bucle de repetición, iterará infinitamente.

R – Repetir bucle Sintaxis: 

repeat 
{ 
   statement
 
   if( condition ) 
   {
      break
   }
}

Repita el diagrama de flujo de bucle: 

Repeat loop Flow Diagram

Para terminar el ciclo de repetición , usamos una declaración de salto que es la palabra clave break . A continuación se muestran algunos programas para ilustrar el uso de bucles de repetición en la programación R.

Ejemplo 1: programa para mostrar los números del 1 al 5 usando el bucle de repetición en R. 

R

# R program to demonstrate the use of repeat loop
 
val = 1
 
# using repeat loop
repeat
{
    # statements
    print(val)
    val = val + 1
 
    # checking stop condition
    if(val > 5)
    {
        # using break statement
        # to terminate the loop
        break
    }
}

Producción: 

[1] 1
[1] 2
[1] 3
[1] 4
[1] 5

En el programa anterior, la variable val se inicializa en 1, luego, en cada iteración del ciclo de repetición, se muestra el valor de val y luego se incrementa hasta que sea mayor que 5. Si el valor de val es mayor que 5, entonces se rompe La declaración se utiliza para terminar el bucle.

Ejemplo 2: Programa para mostrar una declaración cinco veces. 

R

# R program to illustrate
# the application of repeat loop
 
# initializing the iteration variable with 0
i < - 0
 
# using repeat loop
repeat
{
    # statement to be executed multiple times
    print("Geeks 4 geeks!")
 
    # incrementing the iteration variable
    i = i + 1
 
    # checking the stop condition
    if (i == 5)
    {
        # using break statement
        # to terminate the loop
        break
    }
}

Producción: 

[1] "Geeks 4 geeks!"
[1] "Geeks 4 geeks!"
[1] "Geeks 4 geeks!"
[1] "Geeks 4 geeks!"
[1] "Geeks 4 geeks!"

Aquí, inicialmente la variable i se inicializa con 0 y luego en cada iteración del ciclo de repetición después de imprimir Geeks 4 geeks! el valor de i se incrementa hasta que se convierte en 5 y la condición en la instrucción if se vuelve verdadera, entonces, la instrucción break se ejecuta para terminar el ciclo de repetición. 

Instrucciones de salto en bucle

Usamos una declaración de salto en bucles para terminar el bucle en una iteración particular o para omitir una iteración particular en el bucle. Las dos declaraciones de salto más utilizadas en los bucles son: 

  • Instrucción Break: La palabra clave break es una declaración de salto que se utiliza para terminar el ciclo en una iteración particular.

Ejemplo:

R

# R program to illustrate
# the use of break statement
 
# using for loop
# to iterate over a sequence
for (val in 1: 5)
{
    # checking condition
    if (val == 3)
    {
        # using break keyword
        break
    }
 
    # displaying items in the sequence
    print(val)
}

Producción: 

[1] 1
[1] 2

En el programa anterior, si el valor de val se convierte en 3, se ejecutará la instrucción break y el ciclo terminará.

  • Siguiente declaración: la siguiente palabra clave es una declaración de salto que se usa para omitir una iteración particular en el bucle.

Ejemplo: 

R

# R program to illustrate
# the use of next statement
 
# using for loop
# to iterate over the sequence
for (val in 1: 5)
{
    # checking condition
    if (val == 3)
    {
        # using next keyword
        next
    }
 
    # displaying items in the sequence
    print(val)
}

Producción: 

[1] 1
[1] 2
[1] 4
[1] 5

En el programa anterior, si el valor de Val se convierte en 3, se ejecutará la siguiente declaración, por lo que se omitirá la iteración actual del bucle. Entonces 3 no se muestra en la salida.

Como podemos concluir de los dos programas anteriores, la diferencia básica entre las dos sentencias de salto es que la sentencia break finaliza el bucle y la sentencia next salta una iteración particular del bucle.

Publicación traducida automáticamente

Artículo escrito por riturajsaha y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *