Ciclos while

Python tem dois tipos de ciclos - ciclos for e ciclos while. Enquanto os ciclos for iteram sobre uma lista (iterável) elemento por elemento, um ciclo while, por outro lado, repete as instruções dentro do seu corpo enquanto a condição no enunciado while for satisfeita. Nesse sentido, é muito semelhante a um enunciado if. Executa as instruções dentro do ciclo while caso a condição seja satisfeita:
i = 0
while i < 5:
	print('Current i is:', i)
	i += 1
print('Done')
Current i is: 0
Current i is: 1
Current i is: 2
Current i is: 3
Current i is: 4
Done
The program on the left will print this output
  1. Inicialmente, atribuímos o valor 0 a ii = 0.

  1. Em seguida, o programa verifica se i < 5 e, como 0 < 5, entra no corpo do ciclo while.
  1. O programa imprime Current i is: 0
  1. A variável i incrementa em 1, tornando-se i = 1

  1. O programa volta à condição e verifica se i < 5. Como 1 < 5 ⇒ entra no corpo do ciclo while.
  1. O programa imprime Current i is: 1
  1. A variável i incrementa em 1, tornando-se i = 2

  1. O programa verifica se i < 5. 2 < 5 ⇒ entra no corpo do ciclo while
  1. O programa imprime Current i is: 2
  1. A variável i incrementa em 1, tornando-se i = 3

  1. O programa verifica se i < 5. 3 < 5 ⇒ entra no corpo do ciclo while
  1. O programa imprime Current i is: 3
  1. A variável i incrementa em 1, tornando-se i = 4

  1. O programa verifica se i < 5. 4 < 5 ⇒ entra no corpo do ciclo while
  1. O programa imprime Current i is: 4
  1. A variável i incrementa em 1, tornando-se i = 5

  1. O programa verifica se i < 5. 5 = 5 ⇒ O programa sai do ciclo while e imprime Done
 

Desafio

Dado um inteiro positivo n. Imprima o valor de n enquanto for maior que 0 e divida-o por 2 (considerando apenas a parte inteira).
Input
Output
100
100 50 25 12 6 3 1
5
5 2 1
 

Constraints

Time limit: 1 seconds

Memory limit: 512 MB

Output limit: 1 MB

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