Т.е. привычные для нас расчёты 0.2*100 = 20 не будут давать целое число при расчёте на компьютерных системах, из-за особенностей представления дробных чисел в двоичной системе.
Теперь всё стало на свои места, спасибо за разъяснение.
Наверное, имеет смысл перефразировать вопрос, потому я наблюдаю определённые трудности в его понимании.
Итак, есть два арифметических выражения, результат которых я распечатываю командой print:
print 100 * (11.20 - 11) # Результат 20.0
print 20.0 # Результат 20.0
Теперь берём эти два выражения, результат которых абсолютно одинаков (это легко проверить, запустив программку самостоятельно), и передаю функции int()
print int(100 * (11.20 - 11)) # Результат 19
print int(20.0) # Результат 20
Почему?
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
Т.е. привычные для нас расчёты 0.2*100 = 20 не будут давать целое число при расчёте на компьютерных системах, из-за особенностей представления дробных чисел в двоичной системе.
Теперь всё стало на свои места, спасибо за разъяснение.