-
製作了乙個功能來實現您的要求。
function myround(rdata: real): integer;
varireturn:integer;
beginireturn:=trunc(rdata);
如果 rdata>=ireturn+,則四捨五入。
ireturn:=ireturn+1
否則,如果 rdata>=ireturn+ 則實現前後各 5,非零後 5 等於 1。
ireturn:=ireturn+1
否則,如果 rdata>=ireturn+ 則意識到 5 是零視奇偶校驗。
如果 ireturn mod 2<>0,則奇數前的 5 是一進一,偶數前的 5 是四捨五入。
ireturn:=ireturn+1;
myround:=ireturn;
end;
-
函式輪
採用德爾菲函式中的捨入函式"銀行家"四捨五入,非算術四捨五入。
所謂的莊家四捨五入就是你想要四捨五入的。
-
直接使用回合是您需要的。
-
在 Delphi 中,捨入函式使用 round,但需要注意的是,Delphi 的 round 函式使用所謂的"莊家四捨五入法"演算法,即中值的演算法,例如5)在實現捨入功能時,處理器根據小數點前數字的奇偶性質確定捨入,例如捨入結果為6,捨入結果為6,因為6是偶數。
下面是乙個常用的四捨五入算術函式(需要使用數學)。
function roundex(value: extended; roundmode: tfpuroundingmode = rmup): int64;
varrm: tfpuroundingmode;
beginrm := getroundmode;
trysetroundmode(roundmode);
result := round(value);
finally
setroundmode(rm);
end;end;
執行結果截圖:
採用十進位近似值時,如果尾數的最高數字為 4 或小於 4,則刪除尾數。 如果尾數的最高數字為 5 或大於 5,則將尾數捨入到它前面的位置"1"這種近似數字的方法稱為四捨五入。
還行。 首先,分級,分成,四捨五入到1億看1000萬,1000萬是3,要放棄,所以後面四捨五入,變成23,再加一億字,即23億,加上8個零就變成2300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 >>>More
Excel提供的“數學與三角學”中提供的函式round(number,num digits)是按照指定的位數對數字進行四捨五入。 此函式有兩個引數,數字和數字。 其中 number 是將要捨入的數字(或公式的結果): >>>More