Reputation: 15129
Is there any worthy Ruby method to count the number of digits in a float? Also, how do I specify the precise when to_s float numbers?
Upvotes: 4
Views: 7167
Reputation: 521
to specify precision of a float in Ruby. you can use the round method.
number.round(2)
2 is the precision.
53.819.round(2) -> 53.82
Upvotes: 2
Reputation: 24020
# Number of digits
12345.23.to_s.split("").size -1 #=> 7
# The precious part
("." + 12345.23.to_s.split(".")[1]).to_f #=> .023
# I would rather used
# 12345.23 - 12345.23.to_i
# but this gives 0.22999999999563
Upvotes: 6
Reputation: 6993
I think you should check out the number_with_precision helper.
number_with_precision(13, :precision => 5) # => 13.00000
Upvotes: 1