Question

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?

Was it helpful?

Solution

# 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

OTHER TIPS

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

I think you should check out the number_with_precision helper.

number_with_precision(13, :precision => 5) # => 13.00000
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top