Как были представлены недесятичные деньги в программном обеспечении? - PullRequest
6 голосов
/ 13 июня 2010

Многие ответы на вопросы о точности float и double рекомендуют использовать decimal для денежных сумм.Это работает, потому что сегодня все валюты являются десятичными, кроме MGA и MRO , и в них есть субъединицы 1/5, поэтому они по-прежнему удобны для десятичной дроби.

Но как насчетпрограммное обеспечение, используемое на фондовых рынках США, когда цены были в 1/16 доллара?Точность двоичных типов данных не была бы проблемой, верно?

Если вернуться к тому, как британское бухгалтерское программное обеспечение до 1971 года справлялось с фунтами, шиллингами и пенсами?Есть ли в их версиях COBOL специальное предложение PIC?Все ли суммы хранились в пенсах?Как проходила десятичная обработка?

Ответы [ 2 ]

3 голосов
/ 13 июня 2010

PL / У меня был тип специально для британской валюты - я не знаю о КОБОЛ. Британская валюта когда-то включала фартинг, или четверть копейки; Я не уверен, что компьютеры должны были иметь дело с ними, только с половиной копеек или ха-пенни.

Точный учет обычно использует специальные типы - точное представление десятичных дробей. Новый IEEE 754 поддерживает десятичные числа с плавающей запятой, а некоторые чипы (особенно IBM pSeries) имеют такую ​​поддержку в аппаратном обеспечении.

0 голосов
/ 13 июня 2010

1/16 может быть представлено четырьмя цифрами как .0625. Для фракций этого типа вы просто добавляете несколько дополнительных десятичных знаков.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...