ABAP 關於四捨五入演算法

2021-06-28 07:51:40 字數 1057 閱讀 8659

今天有人問我關於四捨五入的演算法

其實,sap提供了函式,沒有函式也是可以的

但還是用函式做比較方便,舉例如下:

data: l_data  type p decimals 3 value '1.456'.

data: l_data1 type p decimals 3.

data: l_data2 type p decimals 3 value '1.546'.

* 方法一

call function 'hr_nz_rounding_decimals'

exporting

value_in = l_data

conv_dec = 1 " 設定保留幾位小數

importing

value_out = l_data1

exceptions

no_rounding_required = 1

decimals_greater_than_10 = 2

rounding_error = 3

others = 4.

write: l_data1.

* 方法二

call function 'round'

exporting

decimals = 0 " 保留多少位小數

input = l_data2

sign = '+' " + 向上取捨 - 向下取捨 (負數也一樣)

importing

output = l_data1 " 輸出返回結果

exceptions

input_invalid = 1

overflow = 2

type_invalid = 3

others = 4.

write: l_data1.

關於四捨五入

四捨五入 轉http nssoft.showdoc.asp?did 267 delphi的四捨五入函式round,對於 5的情況,整數部分是奇數,那麼會round up,偶數會round down,例如 x round 17.5 x 18 x round 12.5 x 12 請使用下面的函式代替ro...

qt的四捨五入 Qt(C )四捨五入

qt現在是四捨六入五成雙,要想四捨五入得自己想辦法,實現如下 include include double c1 3.435 double c2 3.445 double c3 3.4351 double c4 3.4451 double c5 3.445 qdebug qdebug qdebug ...

mysql 金額 四捨五入 mysql四捨五入

雲資料庫 mysql 雲資料庫 rds for mysql 是穩定可靠 可彈性伸縮的雲資料庫服務。通過雲資料庫能夠讓您幾分鐘內完成資料庫部署。雲端完全託管,讓您專注於應用程式開發,無需為資料庫運維煩惱 低至 0.24 小時起,買1年83折 雲資料庫mysql 雲資料庫 rds for mysql 是...