Форум сайта python.su
Здравствуйте. Помогите, пожалуйста, разобраться.
Имеем цикл:
t_1 = 3.
h = 0.1
t =0.
while t < t_1:
t = t + h
print t
Почему при t_1 = 3. печатает 3.0, а при t_1 = 5. - 5.1?
Как это понимать?
Офлайн
почитайте о типах данных
вот, к примеру, чтобы вы поняли
t_1 = 5.0 h = 0.1 t = 0.0 while t < t_1-0.000000000000005: t += h print t, t < t_1
t_1 = 5.0 h = 0.1 t = 0.0 while t < t_1: t += h t = round(t,1) print t, t < t_1
Офлайн
чтоб этого не происходило используйте dcim или срезайте количество знаков после запятой.
Офлайн
Спасибо Вам, разобрался.
Офлайн