Menu
Coddy logo textTech

Rangos en bucles

Parte de la sección Fundamentos del Journey de Swift de Coddy. Lección 48 de 86.

Has estado usando rangos como 1...5 en tus bucles, pero Swift ofrece más flexibilidad para definir estos rangos. Exploremos los diferentes tipos de rangos y una técnica útil para contar hacia atrás.

El operador de rango cerrado (...) incluye ambos extremos:

for i in 1...3 {
    print(i)
}
// Salida: 1, 2, 3

El operador de rango semiabierto (..<) excluye el límite superior, lo que resulta especialmente útil al trabajar con índices basados en cero:

for i in 0..<3 {
    print(i)
}
// Salida: 0, 1, 2

A veces necesitas recorrer en orden inverso. El método reversed() te permite iterar hacia atrás a través de un rango:

for i in (1...3).reversed() {
    print(i)
}
// Salida: 3, 2, 1

Observa los paréntesis alrededor del rango: son necesarios al llamar a reversed() en un rango. Esta técnica es perfecta para las cuentas regresivas o cuando necesitas procesar elementos del último al primero.

challenge icon

Desafío

Fácil
Escribe una función countdown que reciba n y devuelva una cadena que contenga una cuenta regresiva desde n hasta 1, seguida de "Go!".

Usa el método reversed() en un rango para iterar hacia atrás y construir la cadena de la cuenta regresiva.

Lógica:

  • Crea un rango de 1 a n e inviértelo
  • Construye una cadena con cada número separado por un salto de línea
  • Agrega "Go!" en la línea final

Parámetros:

  • n (Int): El número inicial de la cuenta regresiva (1 o mayor)

Devuelve: Una cadena con cada número de la cuenta regresiva en su propia línea, que termina en "Go!" (String). Formato:

3
2
1
Go!

Por ejemplo, si n es 3, la función devuelve "3\n2\n1\nGo!".

Pruébalo tú mismo

func countdown(n: Int) -> String {
    // Escribe el código aquí
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos

Practica por tu cuenta: Playground de Swift