round[函式]

round[函式]
更多義項 ▼ 收起列表 ▲

round函式是EXCEL中的一個基本函式,作用按指定的位數對數值進行四捨五入,語法是ROUND(number, num_digits)。

Round

(銀行家捨入)

Round 函式即四捨五入取偶。

Round 函式在MSDN里的中文釋義為四捨五入,這是翻譯時的疏忽。

在 VB,VBScript,C#,J#,T-SQL 中 Round 函式都是採用 Banker's rounding(銀行家捨入)算法,即四捨六入五取偶。事實上這也是 IEEE 規定的捨入標準。因此所有符合 IEEE 標準的語言都應該是採用這一算法的。

為了避免四捨五入規則造成的結果偏高,誤差偏大的現象出現,一般採用四捨六入五留雙規則(Banker's Rounding)。
準確而言,四捨六入五留雙應稱作“四捨六入,逢五無後則留雙”,如此就可以完全覆蓋此規則的詳情。

四捨六入五留雙規則的具體方法是:

(一)當尾數小於或等於 4時,直接將尾數捨去。

例如,將下列數字全部修約為四位有效數字,結果為:

  • 0.53664—— 0.5366
  • 10.2731—— 10.27
  • 18.5049—— 18.50
  • 0.58344—— 0.5834
  • 16.4005—— 16.40
  • 27.1829—— 27.18

(二)當尾數大於或等於 6時,將尾數捨去並向前一位進位。

例如,將下列數字全部修約為四位有效數字,結果為:

  • 0.53666—— 0.5367
  • 8.3176—— 8.318
  • 16.7777—— 16.78
  • 0.58387—— 0.5839
  • 10.29501—— 10.30
  • 21.0191—— 21.02

(三)當尾數為 5,而尾數後面的數字均為 0時,應看尾數“ 5”的前一位:若前一位數字此時為奇數,就應向前進一位;若前一位數字此時為偶數,則應將尾數捨去。數字“0”在此時應被視為偶數。

例如,將下列數字全部修約為四位有效數字,結果為:

  • 0.153050—— 0.1530
  • 12.6450—— 12.64
  • 18.2750—— 18.28
  • 0.153750—— 0.1538
  • 12.7350—— 12.74
  • 21.845000—— 21.84

(四)當尾數為 5,而尾數“ 5”的後面還有任何不是 0的數字時,無論前一位在此時為奇數還是偶數,也無論“ 5”後面不為 0的數字在哪一位上,都應向前進一位。

例如,將下列數字全部修約為四位有效數字,結果為:

  • 0.326552—— 0.3266
  • 12.73507—— 12.74
  • 21.84502—— 21.85
  • 12.64501—— 12.65
  • 18.27509—— 18.28
  • 38.305000001—— 38.31

雖然“四捨五入”是中國最早提出的算法,值得我們自豪,但不能因此就認為它始終是先進的。畢竟它已經有近二千年歷史了(大約一千七百多年前,天文學家楊偉就已明確提出了“四捨五入法”)。

四捨五入算法逢五就要進位,帶來的問題就是結果偏大,尤其是在大量的數據統計中。Banker 捨入則在統計機率上解決了這個問題。

VFP

ROUND

四捨五入函式ROUND()

格式:ROUND(<;數值表達式>;,<;有效位數>;)

功能:對<;數值表達式>;的值按指定的<;有效位數>;進行四捨五入。如果<;有效位數>;(用n表示)為正數或零,則對小數點後n+1位進行四捨五入;如果n為負數,則對小數點前n位進行四捨五入。

Oracle

round函式為Oracle中的四捨五入函式。

Round(number,[decimals])

其中:

number 待做四捨五入處理的數值

decimals 指明需保留小數點後面的位數。可選項,忽略它則保留0位小數,精確到個位;為負數,表示為小數點左邊四捨五入處理。

例:

SQL> select round(123.123),

2 round(123.123,2),

3 round(123.16,2),

4 round(123.14,-2),

5 round(163.14,-2)

6 from dual;

ROUND(123.123) ROUND(123.123,2) ROUND(123.16,2) ROUND(123.14,-2) ROUND(163.14,-2)

123 123.12 123.16 100 200

MATLAB

函式簡介

調用格式:Y = round(X)

在matlab中round也是一個四捨五入函式。在matlab的命令視窗中輸入doc round或者help round即可獲得該函式的相關幫助信息。

相關函式:ceil、floor、fix

程式示例

>>a = [-1.9,-0.2,3.4,5.6,7.0,2.4+3.6i]

a =

Columns 1 through 4

-1.9000 -0.2000 3.4000 5.6000

Columns 5 through 6

⒎0000 2.4000 + 3.6000i

>>round(a)

ans =

Columns 1 through 4

-2.0000 0 3.0000 6.0000

Columns 5 through 6

⒎0000 2.0000 + 4.0000i

a =

Columns 1 through 4

-1.9000 -0.2000 3.4000 5.6000

Columns 5 through 6

⒎0000 2.4000 + 3.6000i

EXCEL

ROUND(number,decimals)

number:要捨入的數

decimals:指定的保留小數的位數

decimals的取值可為正數,0,負數。當decimals的值為正數時,針對小數點後的數據進行四捨五入;當decimals的值為0時,返回最接近number的整數;當decimals的值為負數時,針對小數點前的數據進行四捨五入,被舍掉的數據用0占位。

示例:

decimas為正數:

ROUND(123.456,2) 返回結果為:123.46

ROUND(123.456,0) 返回結果為:123

ROUND(123.456,-2) 返回結果為:100

相關詞條

相關搜尋

熱門詞條

聯絡我們