首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

公布7个四舍五入的函数,不看不知道,一看吓一跳

2013-10-04 
发布7个四舍五入的函数,不看不知道,一看吓一跳round(3.1456,2)3.15round(3.145,2)3.14round(3.145,1) 3

发布7个四舍五入的函数,不看不知道,一看吓一跳
round(3.1456,2)=3.15
round(3.145,2)=3.14
round(3.145,1)= 3.1
round(3.146,1)=3.1
round(3.256,1)=3.3
round(3.255,1)=3.3
round(3.25,1)=3.2
求好心人告知 round 怎么运作的 
[解决办法]
四舍五入五不入 

比如 4.55==>4.5 /4.51-->4.6
[解决办法]
可以自己写个函数来解决呀
[解决办法]
round()函数,好象是 在舍入位为5时:
  如果后面还有有效数字,就“入”(进位);
    比如 round(3.25,1)=3.2 , round(3.25001,1)=3.3
  如果没有,就“留双”(要保留的那位是奇数,就进位;要保留的那位是偶数,就去尾)。
    比如:round(3.35,1)=3.4 , round(3.25,1)=3.2

其它情况,大家都能很好理解了:
  在舍入位小于5时(0~4)就去尾;在舍入位大于5时(6~9)就进位。

[解决办法]
Round函数
      

描述

返回一个数值,该数值是按照指定的小数位数进行四舍五入运算的结果。

语法

Round(expression [,numdecimalplaces])

Round函数语法有如下几部分:

部分 描述 
expression 必需的。要进行四舍五入运算的数值表达式。 
numdecimalplaces 可选的。数字值,表示进行四舍五入运算时,小数点右边应保留的位数。如果忽略,则Round函数返回整数。 

[解决办法]

英文 MSDN:
Round Function

Description
  Returns a number rounded to a specified number of decimal places.

Syntax
  Round(expression [,numdecimalplaces])

The Round function syntax has these parts:

Part               Description 
------------------ --------------------------------------------
expression         Required. Numeric expression being rounded. 
numdecimalplaces   Optional. Number indicating how many places to the right of the decimal are included in the rounding.
                   If omitted, integers are returned by the Round function. 

中文 MSDN 中的四舍五入是翻译错误,正确的术语应该舍入取整,随意脑补的翻译坑了不知多少人。

How To Implement Custom Rounding Procedures 一文对舍入做了具体说明。

又:微软的 Basic 的目标是商用软件,有一种对 BASIC 命名的释义与通常的 (Beginner's All-purpose Symbolic Instruction Code) 不同,具体记不全了,其中 B 是 Business 的缩写。
自带的函数库中,VBA.Financial 下面有十几个财务相关的函数。
所以 Round 函数采用所谓银行家舍入法(Banker's Rounding)的“四舍六入五成双”舍入法不稀奇。这是对借贷双方完全平等的舍入方式,而不像四三五人法有偏向性。

热点排行