Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.18;
Скачать: CL | DM;

Вниз

Функция округления от Мелкософта   Найти похожие ветки 

 
Seg   (2005-06-22 16:32) [0]

Число 2210,5 ВизуалВасик округлил до 2210.
Есть какие-нибудь идеи?


 
Kerk ©   (2005-06-22 16:33) [1]

все правильно. округляет до ближайшего четного в таких случаях


 
Суслик ©   (2005-06-22 16:35) [2]

Вопрос по сабжу.

Вроде это назвается банковским округлением. И именно оно реализовано в MS в OLE типах (decimal и currency).

Вопрос. Что американцев учат иначе округлять чем нас?


 
старый маразматикЪ   (2005-06-22 16:41) [3]


> Суслик ©   (22.06.05 16:35) [2]

если память не изменяет, тут дело в проце, а не в ф-циях. пришлось писать свою ф-цию округления. смысл - добавлять незначащий разряд перед округлением. т.е. если округлять до 0.055 до 2 десятых, то изменять значение перед округлением до 0.0551
зы. шо-то весьма сумбурно получилось, мдя


 
Seg   (2005-06-22 16:44) [4]

Но если это же число 2210,5 поставить в Excel и сделать формат числа без десятичных знаков, то число округляется до 2211.
Где логика?


 
Суслик ©   (2005-06-22 16:45) [5]

Логика в том, что правила округления деклирируются соответствующими стандартами, коих много.


 
DiamondShark ©   (2005-06-22 16:47) [6]


> Что американцев учат иначе округлять чем нас?

Не американцев, а бухгалтеров.
Если просуммировать большой массив округлённых чисел, то при "школьном" округлении набежит большая погрешность.

А нас учат флажок в процессоре ставить.


 
Суслик ©   (2005-06-22 16:48) [7]


>  [6] DiamondShark ©   (22.06.05 16:47)

Не умничай:))
Есть тип decimal и currency, к которым твой флажок отношения не имеет.


 
Seg   (2005-06-22 16:51) [8]

И как объяснить заказчику, что много разных стандартов округления?
Как установить "школьный" формат округления?


 
Суслик ©   (2005-06-22 16:53) [9]


> [6] DiamondShark ©   (22.06.05 16:47)


> Не американцев, а бухгалтеров.

Если можно, то вопрос по поводу этого.
Когда началась эксплуатация нашей бухгалтерской системы, то все бухгалтера, которые пользовались системой на начальном этапе (их около 100 было), говорили, что это за ацццтой - почему не так округляет.
А округляло действительно до ближ. четного - я пользуюсь decimal (VarType = 14) из OLE automation. Там реализовано именно такое огругление.

Поэтому вопрос. Может это все-таки американских бухгалтеров так учат?


 
Seg   (2005-06-22 16:54) [10]

Меня не волнует, кого чему учат.
Мне надо, чтобы округление было правильным, а не банковским.


 
Суслик ©   (2005-06-22 16:55) [11]


> [8] Seg   (22.06.05 16:51)
> И как объяснить заказчику, что много разных стандартов округления?
> Как установить "школьный" формат округления?

напиши свою функцию округления


 
старый маразматикЪ   (2005-06-22 16:59) [12]


> DiamondShark ©   (22.06.05 16:47) [6]

как-то пробовал, не упомню уже какой. это, кажись
TFPURoundingMode = (rmNearest, rmDown, rmUp, rmTruncate)
и SetRoundMode
не фурычит


 
Seg   (2005-06-22 17:01) [13]

А где же все умники, которые пели дефирамбы Биллу?
Может все-таки есть какая-нибудь опция округления?


 
by ©   (2005-06-22 17:18) [14]

Seg   (22.06.05 17:01) [13]
Если умеешь читать, то вот тебе в помощь
http://support.microsoft.com/default.aspx?scid=kb;en-us;196652


 
Seg   (2005-06-22 17:42) [15]

Visual Basic for Applications does not have any function that does arithmetic rounding.

Этим все сказано.


 
Fay ©   (2005-06-22 17:49) [16]

это до ближайшего чётного.
хочешь, проверь в delphi - будет то же самое 8)


 
by ©   (2005-06-22 17:53) [17]

Fay ©   (22.06.05 17:49) [16]
будет то же самое

Это точно.
И в Delphi и в MS C# прилось писать свои функции.


 
Anatoly Podgoretsky ©   (2005-06-22 17:55) [18]

Seg   (22.06.05 16:54) [10]
Что еще за волюнтаризм


 
Seg   (2005-06-22 18:04) [19]

Волюнтаризм пишется через "а", насколько мне известно.


 
Игорь Шевченко ©   (2005-06-22 18:06) [20]

Seg   (22.06.05 18:04) [19]


> Волюнтаризм пишется через "а", насколько мне известно


Он пишется через черточку. Вол-юнтаризм.


> А где же все умники, которые пели дефирамбы Биллу?


А вот слово "дифирамбы" пишется так, как написано в кавычках.


 
марсианин ©   (2005-06-22 18:35) [21]

может это и не округление вовсе, а отсечение дробной части?
тогда прибавляй 0,5 перед таким "округлением"



Страницы: 1 вся ветка

Текущий архив: 2005.07.18;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.088 c
9-1112803576
Sis3
2005-04-06 20:06
2005.07.18
Как распечатать картинку созданную в OpenGl


14-1119819794
Petr V. Abramov
2005-06-27 01:03
2005.07.18
shall и will


3-1117655097
alex-drob
2005-06-01 23:44
2005.07.18
WideString actual: Integer - Почему


3-1117702051
ryds
2005-06-02 12:47
2005.07.18
синтаксис Lookup и/или Locate по двум полям


14-1119949293
Ega23
2005-06-28 13:01
2005.07.18
Помогите с терминологией!