#author("2018-12-05T18:18:23+09:00","default:Miyashita","Miyashita")
#author("2019-10-17T14:14:48+09:00","default:Miyashita","Miyashita")
*数値の丸め,四捨五入とか [#j8a81262]
[[Mathematics>https://docs.julialang.org/en/v1.0/base/math]]のBase.round
にある通り.
[[Mathematics>https://docs.julialang.org/en/v1.0/base/math]] の Base.round にある通り.
#codeprettify(lang-julia){{
round([T,] x, [r::RoundingMode])
round(x, [r::RoundingMode]; digits::Integer=0, base = 10)
round(x, [r::RoundingMode]; sigdigits::Integer, base = 10)
}}
もっと確認したければ
もっと確認したければ下記のどちらかを実行.
#codeprettify(lang-julia){{
julia> @edit round
help?> round
}}
のどちらかで.~
他の言語にもあるように,ceil・floor・truncもある.それぞれ,値が大・小・0に近い方向に丸める.引数,キーワード引数はroundと同じ.
他の言語にもあるように,ceil・floor・truncもある.それぞれ,値を大・小・0に近い方向に丸める.引数,キーワード引数は round と同じ.

**整数への丸め [#p9155283]
整数の型名を入力するとその型に変換される.~
Floatを維持したいときは最初に型の入力をしない.
Float を維持したいときは最初に型の入力をしない.
#codeprettify(lang-julia){{
julia> round(Int64,1234.5678)
 1235
julia> round(1234.5678)
 1235.0
julia> typeof(ans)
 Float64
}}

**小数第 n 位,有効桁数 m で丸め [#h22e92c5]
それぞれdigitsとsigdigitsのキーワード引数で指定.
それぞれ digits と sigdigits のキーワード引数で指定.
#codeprettify(lang-julia){{
julia> round(1234.5678, digits=3)
 1234.568
julia> round(1234.5678, sigdigits=3)
 1230.0
}}

**最も近い値を求める [#z83f5d26]
丸めとは違うが,
#codeprettify(lang-julia){{
julia> v = [1 5 10 15 30 60];
julia> x = 7.0;
}}
として,x::Float64 を v::Array{Float64,1} の中で最も近い値を求めるときは,
#codeprettify(lang-julia){{
julia> v[findmin(abs.(x.-v))[2]]
 5.0
}}
のようにする.findminの戻り値はインデックスを表し,型はInt64かCartesianIndexになる.
のようにする.findmin の戻り値はインデックスを表し,型は Int64 か CartesianIndex になる.

Front page   Edit Diff Attach Copy Rename Reload   New List of pages Search Recent changes   Help   RSS of recent changes