Да. Только если записать бесконечное количество троек. А это слишком уж долго для того, чтобы быть возможным!
Собственно, 10 = 2 * 5, поэтому мы можем записывать в десятичной системе с абсолютной точностью только дроби 1/2, 1/5 и их произведения, например, 1/50 = 1/2 * 1/5 * 1/5
print(1/2) |
0.5 |
Любые другие дроби python записывает приближенно. А что ему остается делать?
print(1/3) |
0.3333333333333333 |
Получается, в шестидесятиричной системе счисления древних вавилонян были свои преимущества - они могли точно записывать еще и 1/3: ведь 60 = 2 * 2 * 3 * 5
Ну хорошо, можно понять, откуда у нас возникает неточность в вычислениях с 1/3, но причем тут 0.1? Чем эта дробь-то провинилась?
Почему с ней получаются ошибки?