13

I want any items that are rounded such as this:

(5.101 * 100).round / 100.0

To be output like this:

5.10

Instead of this:

5.1

How do I do this in Ruby?

the Tin Man
  • 155,156
  • 41
  • 207
  • 295
William
  • 4,008
  • 15
  • 50
  • 94

2 Answers2

16

There are a couple ways, but I favor using String's % (format) operator:

'%.2f' % [(5.101 * 100).round / 100.0] # => "5.10"

Kernel's sprintf method has the documentation for the various flags and modifiers. There's also Kernel's printf but, like I said, I'd go with %.

the Tin Man
  • 155,156
  • 41
  • 207
  • 295
8

I hope it will help you.

2.0.0p195 :002 > (52.452158744).round(2)
=> 52.45 
2.0.0p195 :003 > (20.452158744).round(2)
=> 20.45 
2.0.0p195 :004 > (20.002555).round(2)
=> 20.0 
2.0.0p195 :005 > (20.012555).round(2)
=> 20.01 
Pravin Mishra
  • 7,934
  • 4
  • 35
  • 48