madf Posted June 14, 2011 at 09:46 AM Author Posted June 14, 2011 at 09:46 AM Почистил тему. Тут обсуждаем только релиз и все что к нему относится, от флуда прошу воздержаться.
nickmas Posted October 30, 2011 at 02:21 PM Posted October 30, 2011 at 02:21 PM Поднимали ли уже вопрос сертификации стг? Если да - пните на тему. Если нет - думаю имеет смысл поднять этот вопрос на обсуждение. ps. извините за офтоп.
morfey Posted October 30, 2011 at 05:14 PM Posted October 30, 2011 at 05:14 PM http://local.com.ua/...B5%D1%80%D0%B0/ http://www.hub.ru/fo...48
madf Posted October 31, 2011 at 08:34 AM Author Posted October 31, 2011 at 08:34 AM У нас в Украине от сертификации, судя по всему, толку мало: нормативные документы засекречены даже от организации занимающейся сертификацией.
morfey Posted December 8, 2011 at 12:06 PM Posted December 8, 2011 at 12:06 PM Какаято бага или фича -0.000000 и инет соответственно не включился, есть разница между 0 и -0, и почему оно установилось в -0 ? 2011-12-06 00:00:54 -- Admin '@stargazer', 0.0.0.0: User 'odinec_': 'cash' parameter changed from '99.000000' to '0.000000'. Subscriber fee charge 2011-12-06 00:00:54 -- Admin '@stargazer', 0.0.0.0: User 'nurtaev': 'cash' parameter changed from '100.000000' to '-0.000000'. Subscriber fee charge
madf Posted December 9, 2011 at 10:27 AM Author Posted December 9, 2011 at 10:27 AM Издержки кривой архитектуры. Именно по этому нельзя хранить деньги как вещественные числа - только целые.
morfey Posted December 9, 2011 at 11:11 AM Posted December 9, 2011 at 11:11 AM вещественные числа - в периоде (бесконечные дроби) ?
madf Posted December 9, 2011 at 11:29 AM Author Posted December 9, 2011 at 11:29 AM Мантисса вещественного числа представляет собой сумму степеней двойки. А таким образом любое число представить нельзя. По этому их точность ограниченна и результаты математических операций могут быть довольно странные.
_WesT_ Posted December 9, 2011 at 11:37 AM Posted December 9, 2011 at 11:37 AM Мантисса вещественного числа представляет собой сумму степеней двойки. А таким образом любое число представить нельзя. По этому их точность ограниченна и результаты математических операций могут быть довольно странные. Ты люцифера вызываешь?
Alexey Osipov Posted December 9, 2011 at 12:33 PM Posted December 9, 2011 at 12:33 PM Мантисса вещественного числа представляет собой сумму степеней двойки. А таким образом любое число представить нельзя. По этому их точность ограниченна и результаты математических операций могут быть довольно странные. Одним из традиционных решений подобных проблем является использование неточных сравнений: a == b тогда и только тогда, когда abs(a - < tolerance, где tolerance - некоторая константа точности. Думаю, для stg хватит 0.0001. Но в будущих версиях есть смысл сделать класс для денежных величин, который будет использовать вещественные числа с фиксированной запятой.
madf Posted December 9, 2011 at 12:47 PM Author Posted December 9, 2011 at 12:47 PM Мантисса вещественного числа представляет собой сумму степеней двойки. А таким образом любое число представить нельзя. По этому их точность ограниченна и результаты математических операций могут быть довольно странные. Одним из традиционных решений подобных проблем является использование неточных сравнений: a == b тогда и только тогда, когда abs(a - < tolerance, где tolerance - некоторая константа точности. Думаю, для stg хватит 0.0001. Но в будущих версиях есть смысл сделать класс для денежных величин, который будет использовать вещественные числа с фиксированной запятой. Другим традиционным решением этой проблемы является хранение денежных значений в виде целых чисел с точностью до копейки с преобразованием при выводе в UI. В 2.409 так и будет сделано Остается вопрос обратной совместимости по конфигуратору, авторизатору и XML RPC. Думаю, этот вопрос решится версионированием (за одно добавлю в авторизатор вывод информации о тарифе).
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now