Ruby/数値
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*目次 [#sb60955c]
#contents
*Float [#te5bd41b]
**定数 [#y1841ec6]
,DIG,Float が表現できる最大の 10 進桁数
,EPSILON,1.0 + Float::EPSILON != 1.0 となる最小の値
,MANT_DIG,仮数部の Float::RADIX 進法での桁数
,MAX,Float が取り得る最大値
,MIN,Float が取り得る最小値
,MAX_10_EXP,最大の 10 進の指数
,MIN_10_EXP,最小の 10 進の指数
,MAX_EXP,最大のFloat::RADIX 進の指数
,MIN_EXP,最小のFloat::RADIX 進の指数
,RADIX,指数表現の基数
,ROUNDS,丸めモード (-1: 不定、0: 0.0 の方向に丸め、1: 四...
*Tips [#baced806]
**任意の桁で四捨五入する [#l2fe2979]
[[Numeric - Rubyリファレンスマニュアル:http://www.ruby-la...
#pre{{
class Numeric
def roundup(d=0)
x = 10**d
if self > 0
(self * x).ceil.quo(x)
else
(self * x).floor.quo(x)
end
end
def rounddown(d=0)
x = 10**d
if self < 0
(self * x).ceil.quo(x)
else
(self * x).floor.quo(x)
end
end
def roundoff(d=0)
x = 10**d
if self < 0
(self * x - 0.5).ceil.quo(x)
else
(self * x + 0.5).floor.quo(x)
end
end
end
if $0 == __FILE__
x = 123.543
puts x.roundoff(2) # => 123.54
puts x.roundoff(1) # => 123.5
puts x.roundoff(0) # => 124.0
puts x.roundoff(-1) # => 120.0
puts x.roundoff(-2) # => 100.0
end
}}
**数値をカンマ区切りに [#i3979f5f]
-Railsには便利なメソッドがあるがRubyはない。いろんな方法...
num = 1234567890
p num.to_s.gsub(/(\d)(?=\d{3}+$)/, '\\1,') #=> "1,234,5...
-他にもいろいろな方法あり。 [[Ruby - 3桁区切りの数字に変...
終了行:
*目次 [#sb60955c]
#contents
*Float [#te5bd41b]
**定数 [#y1841ec6]
,DIG,Float が表現できる最大の 10 進桁数
,EPSILON,1.0 + Float::EPSILON != 1.0 となる最小の値
,MANT_DIG,仮数部の Float::RADIX 進法での桁数
,MAX,Float が取り得る最大値
,MIN,Float が取り得る最小値
,MAX_10_EXP,最大の 10 進の指数
,MIN_10_EXP,最小の 10 進の指数
,MAX_EXP,最大のFloat::RADIX 進の指数
,MIN_EXP,最小のFloat::RADIX 進の指数
,RADIX,指数表現の基数
,ROUNDS,丸めモード (-1: 不定、0: 0.0 の方向に丸め、1: 四...
*Tips [#baced806]
**任意の桁で四捨五入する [#l2fe2979]
[[Numeric - Rubyリファレンスマニュアル:http://www.ruby-la...
#pre{{
class Numeric
def roundup(d=0)
x = 10**d
if self > 0
(self * x).ceil.quo(x)
else
(self * x).floor.quo(x)
end
end
def rounddown(d=0)
x = 10**d
if self < 0
(self * x).ceil.quo(x)
else
(self * x).floor.quo(x)
end
end
def roundoff(d=0)
x = 10**d
if self < 0
(self * x - 0.5).ceil.quo(x)
else
(self * x + 0.5).floor.quo(x)
end
end
end
if $0 == __FILE__
x = 123.543
puts x.roundoff(2) # => 123.54
puts x.roundoff(1) # => 123.5
puts x.roundoff(0) # => 124.0
puts x.roundoff(-1) # => 120.0
puts x.roundoff(-2) # => 100.0
end
}}
**数値をカンマ区切りに [#i3979f5f]
-Railsには便利なメソッドがあるがRubyはない。いろんな方法...
num = 1234567890
p num.to_s.gsub(/(\d)(?=\d{3}+$)/, '\\1,') #=> "1,234,5...
-他にもいろいろな方法あり。 [[Ruby - 3桁区切りの数字に変...
ページ名: