Как округлить до двух знаков после запятой?

Я хочу, чтобы все элементы округлились, например:

(5.101 * 100).round / 100.0

Для вывода следующего вида:

5.10

Вместо этого:

5.1

Как это сделать в Ruby?

Ответ 1

Есть несколько способов, но я предпочитаю использовать оператор String % (format):

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

Kernel sprintf имеет документацию для различных флагов и модификаторов. Там также ядро ​​printf, но, как я уже сказал, я бы пошел с %.

Ответ 2

Надеюсь, это поможет вам.

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