Menu
CoddyTech

Guía de Range

Parte de la sección Fundamentos del Journey de Rust de Coddy. Lección 65 de 75.

En esta lección exploraremos más sobre cómo funciona range.

Sintaxis básica de rangos:

  • start..end - Crea un rango desde start hasta end (exclusivo)
  • start..=end - Crea un rango desde start hasta end (inclusivo)
  • ..end - Crea un rango de 0 a end (exclusivo)
  • ..=end - Crea un rango de 0 a end (inclusivo)
  • start.. - Crea un rango desde start hasta el infinito
  • .. - Crea un rango desde el infinito negativo hasta el infinito positivo

Invierte el rango usando .rev():

  • (0..5).rev() - 4, 3, 2, 1, 0
  • (0..=5).rev() - 5, 4, 3, 2, 1, 0

Saltos de paso usando .step_by(n):

  • (0..10).step_by(2) - 0, 2, 4, 6, 8
  • (0..10).rev().step_by(2) - 9, 7, 5, 3, 1

Por ejemplo:

// Rango ascendente básico
for i in 0..5 { }
// Valores: 0, 1, 2, 3, 4
// Rango inclusivo
for i in 0..=5 { }
// Valores: 0, 1, 2, 3, 4, 5
// Rango en orden inverso
for i in (0..5).rev() { }
// Valores: 4, 3, 2, 1, 0
// Avanza de 2 en 2
for i in (0..10).step_by(2) { }
// Valores: 0, 2, 4, 6, 8
// Combina la inversión del orden y el paso
for i in (0..10).rev().step_by(3) { }
// Valores: 9, 6, 3, 0
challenge icon

Desafío

Fácil

Se te dan dos arrays, numbers1 y numbers2. Imprime una línea para cada uno:

  • Array 1: empieza en la última posición de numbers1 y retrocede de 3 en 3 posiciones (índices 25, 22, 19, ...), imprimiendo el valor en cada posición.
  • Array 2: recorre numbers2 desde el último elemento hasta el primero e imprime solo los valores divisibles por 4.

Imprime cada valor entre corchetes, con , entre los valores y nada después del último:

Array 1: [26], [23], [20], ...
Array 2: [36], [36], ...

Pruébalo tú mismo

fn main() {
    let numbers1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26];
    let numbers2 = [17, 53, 24, 77, 84, 98, 24, 36, 89, 31, 36];
    print!("Array 1: ");
    // Escribe tu código aquí
    
    println!();
    print!("Array 2: ");
    // Escribe tu 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: Compilador de Rust online