用法:
round([T,] x, [r::RoundingMode])
round(x, [r::RoundingMode]; digits::Integer=0, base = 10)
round(x, [r::RoundingMode]; sigdigits::Integer, base = 10)
將數字四舍五入 x
。
如果沒有關鍵字參數,x
將被四舍五入為整數值,返回類型為 T
的值,如果沒有提供 T
,則返回與 x
相同類型的值。如果該值不能由 T
表示,則將拋出
,類似於 InexactError
。convert
如果提供了 digits
關鍵字參數,它將舍入到小數點後的指定位數(如果為負數,則在前),以 base
為基礎。
如果提供了 sigdigits
關鍵字參數,它會舍入到指定的有效位數,以 base
為基礎。
RoundingMode
r
控製舍入的方向;默認值為
,四舍五入到最接近的整數,而平局(小數值為 0.5)四舍五入到最接近的偶數。請注意,如果更改全局舍入模式,RoundNearest
round
可能會給出不正確的結果(請參閱
)。rounding
例子
julia> round(1.7)
2.0
julia> round(Int, 1.7)
2
julia> round(1.5)
2.0
julia> round(2.5)
2.0
julia> round(pi; digits=2)
3.14
julia> round(pi; digits=3, base=2)
3.125
julia> round(123.456; sigdigits=2)
120.0
julia> round(357.913; sigdigits=4, base=2)
352.0
注意
對二進製浮點數進行運算時,舍入到以 2 為基數的指定數字可能是不精確的。例如,1.15
表示的
值實際上是Float64
less
而不是1.15,但將四舍五入為1.2。
例子
julia> x = 1.15
1.15
julia> @sprintf "%.20f" x
"1.14999999999999991118"
julia> x < 115//100
true
julia> round(x, digits=1)
1.2
擴展
要將 round
擴展到新的數字類型,通常定義 Base.round(x::NewType, r::RoundingMode)
就足夠了。
相關用法
- Julia round()用法及代碼示例
- Julia rot180用法及代碼示例
- Julia rotr90用法及代碼示例
- Julia rotl90用法及代碼示例
- Julia rem用法及代碼示例
- Julia rpad用法及代碼示例
- Julia reduce方法用法及代碼示例
- Julia redirect_stdio用法及代碼示例
- Julia readchomp用法及代碼示例
- Julia rstrip用法及代碼示例
- Julia readuntil用法及代碼示例
- Julia replace!用法及代碼示例
- Julia real方法用法及代碼示例
- Julia rationalize用法及代碼示例
- Julia rsplit用法及代碼示例
- Julia readlines用法及代碼示例
- Julia replace()用法及代碼示例
- Julia retry用法及代碼示例
- Julia read用法及代碼示例
- Julia reverseind用法及代碼示例
- Julia reim用法及代碼示例
- Julia repeat方法用法及代碼示例
- Julia readline用法及代碼示例
- Julia repeat用法及代碼示例
- Julia repr方法用法及代碼示例
注:本文由純淨天空篩選整理自julialang.org 大神的英文原創作品 Base.round — Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。