continue

Interromper um loop é ótimo, mas e se quisermos apenas pular uma única vez? E se não quisermos executar o restante do loop para um valor específico, mas queremos que o loop continue?
Para isso, podemos usar a instrução continue, que continua a execução para a próxima rodada 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 pulará a execução para cada n em que n % 2 != 0 (n não é par).
O continue pula a execução de tudo o que vem depois dele. Portanto, tudo antes do continue ainda é executado. O Python precisa alcançar a instrução continue para saber que precisa pular o restante.

Desafio

Dados 10 números inteiros, o programa deve imprimir cada número se todas as condições forem atendidas:
  • É í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
Observe que [l, r] indica o intervalo de l a r, onde tanto l quanto r são inclusivos.
Dica
Você pode pular a execução do loop para cada um dos casos em que a condição não é atendida (assim, você 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