#!/usr/bin/env catnip
# Exemple d'utilisation de `continue` dans une boucle

# Filtrer les nombres pairs
print("Odd numbers from 1 to 10:")
for i in list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10) {
    if i % 2 == 0 {
        continue  # Ignorer les nombres pairs
    }
    print(i)
}

# Calculer une somme en ignorant certaines valeurs
print("Sum of numbers (except multiples of 3):")
total = 0
for i in list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12) {
    if i % 3 == 0 {
        continue  # Ignorer les multiples de 3
    }
    total = total + i
}
print("Total:", total)

# Validation de données avec `continue`
print("Age validation:")
ages = list(25, -5, 30, 150, 42, 0, 18)

valid_ages = list()
for age in ages {
    # Ignorer les valeurs invalides
    if age < 0 or age > 120 {
        print("Invalid age ignored:", age)
        continue
    }

    valid_ages = valid_ages + list(age)
}

print("Valid ages:", valid_ages)

# Somme avec `continue`
# Sans le scope de boucle, on aurait une boucle infinie à cause de la portée du `i` précédent
print("Sum calculation with continue:")
total = 0
i = 1

while i <= 20 {
    # Ignorer les multiples de 3
    if i % 3 == 0 {
        i = i + 1
        continue
    }

    total = total + i
    i = i + 1
}

print("Sum (without multiples of 3):", total)