Например, число 61.0 имеет точное двоичное представление, потому что интегральная часть любого числа всегда точна. Но число 6.10 не является точным. Все, что я сделал, это перемещение десятичного места, и я внезапно перешел из Exactopia в Inexactville. Математически не должно быть внутренней разницы между двумя числами - они просто цифры.
blockquote>Давайте немного отстранимся от деталей баз 10 и 2. Давайте спросим base
b
, какие числа имеют завершающие представления, а какие нет? Мгновенная мысль говорит нам, что числоx
имеет завершающееb
-представление тогда и только тогда, когда существует целое числоn
такое, чтоx b^n
является целым числом.Итак, например ,
x = 11/500
имеет завершающее 10-представление, потому что мы можем выбратьn = 3
, а затемx b^n = 22
, целое число. Однакоx = 1/3
этого не делает, потому что независимо от того, чтоn
мы выбрали, мы не сможем избавиться от 3.. Этот второй пример подсказывает нам думать о факторах, и мы можем видеть, что для любого рациональный
x = p/q
(предполагается, что он имеет наименьшие члены), мы можем ответить на вопрос, сравнив простые факторизацииb
иq
. Еслиq
имеет какие-либо простые множители не в простой факторизацииb
, мы никогда не сможем найти подходящийn
, чтобы избавиться от этих факторов.Таким образом, для базы 10 any
p/q
, гдеq
имеет простые множители, отличные от 2 или 5, не будет иметь конечного представления.Итак, теперь, возвращаясь к основаниям 10 и 2, мы видим, что любой рациональное с завершающим 10-представлением будет иметь вид
p/q
точно, когдаq
имеет только2
s и5
s в своей простой факторизации; и то же число будет иметь завершающее 2-представление, когдаq
имеет только2
s в своей простой факторизации.Но один из этих случаев является подмножеством другого! Всякий раз, когда
blockquote>
q
имеет только2
s в своей простой факторизации, очевидно, также верно, что
blockquote>
q
имеет только2
s и5
s в своей простой факторизацииили, по-другому, когда
p/q
имеет завершающий 2-представление,p/q
имеет завершающее 10-представление. Однако обратное, однако, имеет место не - всякий раз, когдаq
имеет 5 в своей простой факторизации, он будет иметь завершающее 10-представление, но не является завершающим 2-представлением. Это пример0.1
, упомянутый другими ответами.Итак, у нас есть ответ на ваш вопрос - потому что простые множители 2 являются подмножеством простых множителей 10, все 2-оканчивающиеся числа являются 10-конечными числами, но не наоборот. Это не примерно 61 против 6.1 - это около 10 против 2.
Как заключительная заметка, если какой-то причудой люди использовали (скажем) базу 17, но наши компьютеры использовали базу 5, ваша интуиция никогда бы не была приведена в действие в этом случае - no (ненулевые, нецелые) числа, которые прекратились в обоих случаях!
У меня была та же проблема.
rvm reinstall 2.1.3 --disable-binary
работал для меня (на основе Fresh Installs of RVM и Ruby 2.1.1 - ошибка библиотеки dyld / pathing ).