Inclua condicionais
O loop while que corrige o offset é um bom começo, mas e se o offset for negativo? Você pode tentar executar o seguinte código, em que offset é inicializado como -6:
# Initialize offset
offset = -6
# Code the while loop
while offset != 0 :
print("correcting...")
offset = offset - 1
print(offset)
mas sua sessão será desconectada. O loop while nunca deixará de ser executado, pois offset vai diminuir ainda mais a cada execução. offset != 0 nunca se tornará False, e o loop while continuará para sempre.
Corrija a situação colocando uma instrução if-else dentro do loop while.
Observe que, se o loop while demorar muito para ser executado ou se a sessão estiver expirando, você poderá ter criado um loop infinito. Em particular, lembre-se de recuar o conteúdo do loop usando quatro espaços ou recuo automático e confira se as condições garantem que o loop tenha um ponto de parada.
Este exercício faz parte do curso
Python intermediário
Instruções do exercício
Inicialize
offsetcomo-6.Dentro do loop
while, complete a instruçãoif-else:Se
offsetfor maior que zero, subtraia 1 deoffset.Caso contrário, você deve somar 1 a
offset.
Se o código estiver demorando muito para ser executado (ou se a sessão estiver expirando), provavelmente você cometeu um erro. Verifique o código e confira se a instrução offset != 0 chega a ser avaliada como FALSE!
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Initialize offset
offset = -6
# Code the while loop
while offset != 0 :
print("correcting...")
if ____ :
____
else :
____
print(offset)