мне было интересно, если это тот же код может быть сделано с for loop
вместо того, while
Изменение в то время как цикл в цикл
d = 0.6
b = 0.0
h = 0.0
t = 0.0
count = 0
h = float(input("enter height: "))
b = float(input("enter a number of bounces: "))
t = h
while count < b:
if count == b - 1:
t += h * d
#print(t)
else:
h = h * d
t += h * 2
#print(t)
count += 1
#print (t)
print(t)
Вы не можете использовать функцию float в диапазоне. Это должно быть целое число. И если вы используете 'round()' результат изменится, сначала проверьте переменные OP. Этот ответ далек от того, чего хотят OP. – GLHF
@ GLHF Это правда, спасибо за указание. Думаю, я просто прочитал, что b означает отскоки, которые, естественно, будут int. – hlfrmn
Также результат вашего ответа неверен, вы должны использовать диапазон (b) вместо операторов (b-1) и 'if' -' else'. – GLHF