Вернуться   Биткоин Форум > Разработка и Техническое Обсуждение
12 апреля 2011, 5:17:53 AM   # 1
 
 
Сообщения: 602
Цитировать по имени
цитировать ответ
по умолчанию Re: значение Float от bitcoind, как я должен представить его?

Взлом Биткоин адресов.
500 Биткоинов взломаны в "мозговом кошельке" с паролем "bitcoin is awesome"
Адрес кошелька: 14NWDXkQwcGN1Pd9fboL8npVynD5SfyJAE
Приватный ключ: 5J64pq77XjeacCezwmAr2V1s7snvvJkuAz8sENxw7xCkikceV6e
подробнее...


Всем кто хочет заработать Биткоины без вложений - рекомендую сайт http://bitcoin-zarabotat.ru
я прочел https://en.bitcoin.it/wiki/Proper_Money_Handling_(JSON-RPC), Но я все еще не уверены в том, что делать.

Я использую библиотеку JSON в рубин разобрать результат JSON из bitcoind

А для таких вещей, как баланс он будет возвращать поплавок.

Я задаюсь вопросом, как лучше поступить с представлением Bitcoin остатков или номера в целом в моем приложении.

Должен ли я оставить его в качестве поплавка (от того, что я прочитал это не рекомендуется)?
Преобразовать его в BigDecimal
Преобразование в целое число (это будет означать, умножив его на 100000000 справа)?

Какой опыт кого-либо еще имел с этим, что они выбрали и почему?

Что самый простой вариант?
Нефарио сейчас офлайн Пожаловаться на Нефарио   Ответить с цитированием Мультицитирование сообщения от Нефарио Быстрый ответ на сообщение Нефарио


Как заработать Биткоины?
Без вложений. Не майнинг.


12 апреля 2011, 6:52:47 AM   # 2
 
 
Сообщений: 70
Цитировать по имени
цитировать ответ
по умолчанию Re: значение Float от bitcoind, как я должен представить его?

Получил 1806 Биткоинов
Реальная история.





я прочел https://en.bitcoin.it/wiki/Proper_Money_Handling_(JSON-RPC), Но я все еще не уверены в том, что делать.

К сожалению, эта вики страница была изменена, чтобы отразить мнение меньшинства, и никто не имеет времени или мотивации, чтобы сделать корректирующие изменения, которые затем будут немедленно отменены.

Если ваш язык программирования поддерживает его, вы должны использовать тип данных с фиксированной точностью, такие как десятичные.

xf2_org сейчас офлайн Пожаловаться на xf2_org   Ответить с цитированием Мультицитирование сообщения от xf2_org Быстрый ответ на сообщение xf2_org

12 апреля 2011, 12:19:06 PM   # 3
 
 
Сообщения: 2870
Цитировать по имени
цитировать ответ
по умолчанию Re: значение Float от bitcoind, как я должен представить его?

После преобразования в десятичную, убедитесь, что вы круглый до 8 десятичных знаков точности, чтобы исправить любые ошибки с плавающей точкой.
theymos сейчас офлайн Пожаловаться на theymos   Ответить с цитированием Мультицитирование сообщения от theymos Быстрый ответ на сообщение theymos

12 апреля 2011, 12:36:00 PM   # 4
 
 
Сообщения: 602
Цитировать по имени
цитировать ответ
по умолчанию Re: значение Float от bitcoind, как я должен представить его?

Ну, так как я уже построил свою систему для обработки целых чисел, это то, что я собираюсь с.
Во-первых, я преобразования поплавок в строковое представление, а затем с помощью, чтобы сделать объект BigDecimal (8 мест для правильного представления), а затем умножением на 100.000.000.

Все остальное делается внутри с целыми числами.
Нефарио сейчас офлайн Пожаловаться на Нефарио   Ответить с цитированием Мультицитирование сообщения от Нефарио Быстрый ответ на сообщение Нефарио

12 апреля 2011, 1:46:05 PM   # 5
 
 
Сообщения: 1652
Цитировать по имени
цитировать ответ
по умолчанию Re: значение Float от bitcoind, как я должен представить его?

Во-первых, я преобразования поплавок в строковое представление, а затем с помощью, чтобы сделать объект BigDecimal (8 мест для правильного представления), а затем умножением на 100.000.000.

Все остальное делается внутри с целыми числами.

Это звучит слишком сложным. Есть ли у вашего рубин / реализация JSON с двойной точностью (64-разрядная версия) плавает? Если это произойдет, просто умножить на 1.0e8 и округление до ближайшего целого числа.

Быстрый способ сказать, если ваша реализация рубина делает 64-битных поплавки: видит, что вы получите преобразования 21000000.00000001 * 1E8 в целое число.
Гэвин Андресен сейчас офлайн Пожаловаться на Гэвин Андресен   Ответить с цитированием Мультицитирование сообщения от Gavin Andresen Быстрый ответ на сообщение Гэвин Андресен

12 апреля 2011, 1:55:10 PM   # 6
 
 
Сообщения: 602
Цитировать по имени
цитировать ответ
по умолчанию Re: значение Float от bitcoind, как я должен представить его?

Во-первых, я преобразования поплавок в строковое представление, а затем с помощью, чтобы сделать объект BigDecimal (8 мест для правильного представления), а затем умножением на 100.000.000.

Все остальное делается внутри с целыми числами.

Это звучит слишком сложным. Есть ли у вашего рубин / реализация JSON с двойной точностью (64-разрядная версия) плавает? Если это произойдет, просто умножить на 1.0e8 и округление до ближайшего целого числа.

Быстрый способ сказать, если ваша реализация рубина делает 64-битных поплавки: видит, что вы получите преобразования 21000000.00000001 * 1E8 в целое число.

Рубин имеет 2 классов для представления чисел, Fixnum и Bignum, он преобразует между 2 автоматически.

Да что работало супер.
21000000.00000001 * 1e8.to_i
>2100000000000001

Нефарио сейчас офлайн Пожаловаться на Нефарио   Ответить с цитированием Мультицитирование сообщения от Нефарио Быстрый ответ на сообщение Нефарио

12 апреля 2011, 7:19:54 PM   # 7
 
 
Сообщения: 2282
Цитировать по имени
цитировать ответ
по умолчанию Re: значение Float от bitcoind, как я должен представить его?

круглый (1E8 * стоимость) работает в основном на любом языке.
Люк-младший сейчас офлайн Пожаловаться на Luke-Jr   Ответить с цитированием Мультицитирование сообщения от Luke-Jr Быстрый ответ на сообщение Luke-Jr



Как заработать Биткоины?

Bitcoin Wallet * Portefeuille Bitcoin * Monedero Bitcoin * Carteira Bitcoin * Portafoglio Bitcoin * Bitcoin Cüzdan * 比特币钱包

bitcoin-zarabotat.ru
Почта для связи: bitcoin-zarabotat.ru@yandex.ru

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW