En este documento se explican las estructuras de control
if, for y
while en R, con ejemplos prácticos que
muestran cómo utilizarlas para resolver problemas reales.
ifLa sentencia if permite ejecutar código
condicionalmente, dependiendo de si una condición lógica es
verdadera (TRUE) o falsa
(FALSE).
También se puede complementar con else if y
else.
Sintaxis:
if (condición) {
# Código si la condición es TRUE
} else if (otra_condición) {
# Código si la otra condición es TRUE
} else {
# Código si ninguna condición se cumple
}
Determinar si un número ingresado por el usuario es positivo, negativo o cero.
numero <- -3
if (numero > 0) {
cat("El número es positivo\n")
} else if (numero == 0) {
cat("El número es cero\n")
} else {
cat("El número es negativo\n")
}
## El número es negativo
forEl bucle for ejecuta un bloque de código un número determinado de veces, recorriendo una secuencia de valores.
Sintaxis:
for (variable in secuencia) {
# Código a repetir
}
Calcular la suma de los primeros 10 números enteros positivos.
suma <- 0
for (i in 1:10) {
suma <- suma + i
}
cat("La suma de los primeros 10 enteros es:", suma, "\n")
## La suma de los primeros 10 enteros es: 55
whileEl bucle while ejecuta código mientras se cumpla una condición lógica. Es útil cuando no se sabe cuántas repeticiones serán necesarias.
Sintaxis:
while (condición) {
# Código a repetir
}
Generar números aleatorios entre 0 y 1 y sumarlos hasta que la suma supere 3.
suma <- 0
contador <- 0
numeros<-c()
while (suma <= 3) {
numero <- runif(1) # números aleatorios entre [0,1] con distribución uniforme.
numeros<-c(numeros,numero)
suma <- suma + numero
contador <- contador + 1
}
cat("Se generaron", contador, "números aleatorios.\n")
## Se generaron 6 números aleatorios.
cat("La suma final fue:", suma, "\n")
## La suma final fue: 3.072931
cat("los numeros fueron", numeros,"\n")
## los numeros fueron 0.5783545 0.1587396 0.2979601 0.720497 0.954169 0.3632106