initial_stock = 6
for stock in range(1, initial_stock):
initial_stock -= 1
print(f'Venda realizada! Estoque restante: {initial_stock}')
print('Estoque esgotado')
initial_stock = 6
for stock in range(1, initial_stock):
initial_stock -= 1
print(f'Venda realizada! Estoque restante: {initial_stock}')
print('Estoque esgotado')
Olá, Renato!
Veja o que está acontecendo no seu código: você está modificando a variável initial_stock dentro do laço for, mas o range(1, initial_stock) ainda gera um intervalo fixo até 5 (no seu caso). Isso faz com que o laço execute apenas algumas vezes e depois pare.
Aqui está o ajuste que você pode fazer para que o laço continue até que o estoque chegue a 0:
initial_stock = 6
# Enquanto o estoque for maior que 0, continua vendendo
while initial_stock > 0:
initial_stock -= 1
print(f'Venda realizada! Estoque restante: {initial_stock}')
print('Estoque esgotado')
O código acima usa o laço while, que vai continuar enquanto o estoque for maior que 0. Assim, ele vai diminuindo o estoque até esgotar, e ao final, imprime que o estoque acabou.
Bons estudos!