Practica 5: Manejo de ciclos en y condiocionales en R

Objetivo: Realizar operaciones de recorrdio de vectore por medio de ciclos en R y realizar algunas operaciones haciendo uso de condicionales en R

Descripción.A través del uso de mecanismos de flujos de control, mediante ciclos y condiocionales en R, ejecutar operaciones.

Recorrer y presentar un ciclo desde 20 hasta 40 mostrando el valor de la variables del cislo mediate uso de for, whiel y repear

## FOR

val1 <-20 
for (val1 in 20:40)
{
print(val1)
}
## [1] 20
## [1] 21
## [1] 22
## [1] 23
## [1] 24
## [1] 25
## [1] 26
## [1] 27
## [1] 28
## [1] 29
## [1] 30
## [1] 31
## [1] 32
## [1] 33
## [1] 34
## [1] 35
## [1] 36
## [1] 37
## [1] 38
## [1] 39
## [1] 40
## WHILE
val1 <-20

while (val1<=40)  {
    val1 <- val1 + 1   
      if (val1 >=20 & val1 <= 40) 
      print(val1)
}
## [1] 21
## [1] 22
## [1] 23
## [1] 24
## [1] 25
## [1] 26
## [1] 27
## [1] 28
## [1] 29
## [1] 30
## [1] 31
## [1] 32
## [1] 33
## [1] 34
## [1] 35
## [1] 36
## [1] 37
## [1] 38
## [1] 39
## [1] 40
##REPEAT
val1 <-20
repeat 
  {
  print (val1)
   val1 <- val1 + 1   
 
   if (val1 >= 41)
break
   }
## [1] 20
## [1] 21
## [1] 22
## [1] 23
## [1] 24
## [1] 25
## [1] 26
## [1] 27
## [1] 28
## [1] 29
## [1] 30
## [1] 31
## [1] 32
## [1] 33
## [1] 34
## [1] 35
## [1] 36
## [1] 37
## [1] 38
## [1] 39
## [1] 40
##Genera una secuencia de 20 números de 5 en 5 comenzando en 10 y recorrer e imprimir la variable por medio de ciclo for, while y repeat

###for

val1 <- 10
for (val1 in seq(5,100,5))
  {
          print(val1+5)
}
## [1] 10
## [1] 15
## [1] 20
## [1] 25
## [1] 30
## [1] 35
## [1] 40
## [1] 45
## [1] 50
## [1] 55
## [1] 60
## [1] 65
## [1] 70
## [1] 75
## [1] 80
## [1] 85
## [1] 90
## [1] 95
## [1] 100
## [1] 105
### WHILE
val1 <-5
while (val1<=105)  {
    val1 <- val1 + 5   
      if (val1 >=10 & val1 <= 105) 
      print(val1)
}
## [1] 10
## [1] 15
## [1] 20
## [1] 25
## [1] 30
## [1] 35
## [1] 40
## [1] 45
## [1] 50
## [1] 55
## [1] 60
## [1] 65
## [1] 70
## [1] 75
## [1] 80
## [1] 85
## [1] 90
## [1] 95
## [1] 100
## [1] 105
##REPEAT
val1 <-10
repeat 
  {
  print (val1)
   val1 <- val1 + 5   
 
   if (val1 >= 110)
break
  }
## [1] 10
## [1] 15
## [1] 20
## [1] 25
## [1] 30
## [1] 35
## [1] 40
## [1] 45
## [1] 50
## [1] 55
## [1] 60
## [1] 65
## [1] 70
## [1] 75
## [1] 80
## [1] 85
## [1] 90
## [1] 95
## [1] 100
## [1] 105
##Establecer una semilla una semilla de set.seed(50) para generar números aleatorios
##Generar 30 números aleatorios de entre 80 y 100 con valores repetidos y recorrer por medio de ciclos for, while y repeat

set.seed(50)
val1 <- sample(80:100,30 ,replace = TRUE)
val1
##  [1] 94 89 84 96 90 80 94 93 80 82 88 85 93 81 85 94 97 87 81 83 92 84 94
## [24] 97 86 93 92 85 86 87
### FOR
set.seed(50)
val1 <- sample(80:100,30 ,replace = TRUE)
for (i in val1)
{
 print(i)
}
## [1] 94
## [1] 89
## [1] 84
## [1] 96
## [1] 90
## [1] 80
## [1] 94
## [1] 93
## [1] 80
## [1] 82
## [1] 88
## [1] 85
## [1] 93
## [1] 81
## [1] 85
## [1] 94
## [1] 97
## [1] 87
## [1] 81
## [1] 83
## [1] 92
## [1] 84
## [1] 94
## [1] 97
## [1] 86
## [1] 93
## [1] 92
## [1] 85
## [1] 86
## [1] 87
###While

set.seed(50)
val1 <- sample(80:100,30 ,replace = TRUE)
res<-1
while(res<=length(val1))   
{
  print(val1[res]) 
  res<-res+1 
}
## [1] 94
## [1] 89
## [1] 84
## [1] 96
## [1] 90
## [1] 80
## [1] 94
## [1] 93
## [1] 80
## [1] 82
## [1] 88
## [1] 85
## [1] 93
## [1] 81
## [1] 85
## [1] 94
## [1] 97
## [1] 87
## [1] 81
## [1] 83
## [1] 92
## [1] 84
## [1] 94
## [1] 97
## [1] 86
## [1] 93
## [1] 92
## [1] 85
## [1] 86
## [1] 87
###REPEAT
set.seed(50)
val1 <- sample(80:100,30 ,replace = TRUE)
res<-1
repeat
{
  print(val1[res]) 
  res<-res+1 
  if (res>length(val1)) 
    break() 
}
## [1] 94
## [1] 89
## [1] 84
## [1] 96
## [1] 90
## [1] 80
## [1] 94
## [1] 93
## [1] 80
## [1] 82
## [1] 88
## [1] 85
## [1] 93
## [1] 81
## [1] 85
## [1] 94
## [1] 97
## [1] 87
## [1] 81
## [1] 83
## [1] 92
## [1] 84
## [1] 94
## [1] 97
## [1] 86
## [1] 93
## [1] 92
## [1] 85
## [1] 86
## [1] 87
##La misma opción anterior pero mediante una condición if  salir y romper (break) el ciclo para cuando el valor generado aleatoriamente esté entre 85 y 95 

### FOR

set.seed(50)
misnumeros <- sample(85:95, 30, replace = TRUE)
misnumeros
##  [1] 92 89 87 93 90 85 92 92 85 86 89 87 92 85 88 92 94 89 85 86 91 87 92
## [24] 94 88 92 91 87 88 89
"si hay un valor entre 85 y 95 salir del ciclo"
## [1] "si hay un valor entre 85 y 95 salir del ciclo"
for (i in misnumeros) {
  print (i)
  if (i>=80 & i<=95)
break
}
## [1] 92
print ("salimos del ciclo")
## [1] "salimos del ciclo"
###WHIle
set.seed(50)
misnumeros <- sample(85:95, 30, replace = TRUE)
misnumeros
##  [1] 92 89 87 93 90 85 92 92 85 86 89 87 92 85 88 92 94 89 85 86 91 87 92
## [24] 94 88 92 91 87 88 89
"si hay un valor entre 85 y 95 salir del ciclo"
## [1] "si hay un valor entre 85 y 95 salir del ciclo"
i <- 1
while (TRUE) {
  print (misnumeros[i])
  if (misnumeros[i]>=85 & misnumeros[i]<=95)
    break
  i <- i + 1
}
## [1] 92
print ("salimos del ciclo")
## [1] "salimos del ciclo"
###Repeat
set.seed(50)
misnumeros <- sample(85:95, 30, replace = TRUE)
misnumeros
##  [1] 92 89 87 93 90 85 92 92 85 86 89 87 92 85 88 92 94 89 85 86 91 87 92
## [24] 94 88 92 91 87 88 89
i <- 1
repeat  {
  print (misnumeros[i])
  if (misnumeros[i]>=85 & misnumeros[i] <= 95)
    break
  i <- i +1 
}
## [1] 92