continue

Interromper um loop é ótimo, mas e se quisermos apenas saltar esta vez? E se não quisermos executar o resto do loop para este valor específico, mas queremos que o loop continue?
Para isso, podemos usar a instrução continue, que continuará a execução para a próxima iteração do loop:
numbers = [1, 5, 6, 4, 0, -4, 8, 11, 2]
even_sum = 0
for n in numbers:
    if n % 2 != 0:
        continue
    even_sum += n
    print(n)

print('Sum:', even_sum)
6
4
0
-4
8
2
Sum: 16
Este programa irá saltar a execução para cada n em que n % 2 != 0 (n não é par).
O continue salta a execução de tudo o que vem depois dele. Portanto, tudo antes do continue ainda é executado. Python precisa de alcançar a instrução continue para saber que precisa de saltar o resto.

Desafio

Dado 10 números inteiros, o programa deve imprimir cada número se todas as condições forem verdadeiras:
  • É ímpar
  • Está fora do intervalo [3, 7]
  • Está fora do intervalo [11, 13]
  • Está fora do intervalo [17, 23]
Entrada
Saída
12 9 6 0 1 -1 41 28 27 17
9 1 -1 41 27
Note que [l, r] indica o intervalo de l até r onde ambos l e r são inclusivos.
Dica
Você pode saltar a execução do loop para cada um dos casos em que a condição não é satisfeita (assim, pode ter 4 instruções if com continue e uma instrução print no final).
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue