Вверх ↑
Ответов: 8954
Рейтинг: 824
#1: 2015-12-16 10:00:08 ЛС | профиль | цитата
Aziz, тут и проверять нечего, знать надо что компьютер пользует двоичную систему, а не десятичную и дроби круглые в десятичной в двоичной системе периодические и бесконечны в большинстве случаев, в т. ч. и 0.1 и 0.2:
0.1[10]=0.000110011001100110011001100....[2]
0.2[10]=0.001100110011001100110011001....[2]
В зависимости от того на какую цифру "1" или "0" пришлось округление последнего знака (для Real 8-байтного числа это 52-ой бит после запятой) округление будет с избытком или недостатком, вот и получается, что 0.1+0.1<>0.2.
А в какую сторону не равно, можете сами проверить продолжив дроби до 52 знака, округлив их до 51 знаков и сложив 0.1 + 0.1 и сравнивая сумму с 0.2
карма: 19

0