Home

Round to the nearest 0.5 in Ruby

A cool and quick trick to round floats to the nearest 0.5 in Ruby.

To round a number to the nearest 0.5 in most programming languages, you multiply the number by 2, round it, then divide the result by 2.

In Ruby, this looks like this:

(x * 2.0).round / 2.0

If you are going to use it a lot, you can add it to the Float class:

class Float

def round_to_half
(self * 2.0).round / 2.0
end

end

Then, you can simply use:

3.74.round_to_half
# => 3.5

Just make sure you use a float and not an integer, as that method won't be available in another class (unless you make it available). For example:

2.round_to_half
# => undefined method `round_to_half' for 2:Fixnum

Let's Connect

Keep Reading

Access the Site Object within a Jekyll Filter

Filters are the way to make liquid work for you, but sometimes we want more context than we are given when running them.

Aug 21, 2018

Add Search to ActsAsTaggableOn with PostgreSQL and Context

ActsAsTaggableOn is a great gem for working with tags in your application, but it can be a PITA when you want to be able to search for tags.

Jan 30, 2017

How To Reverse a Ruby Hash

It's nice and easy to reverse a ruby array. See how to easily convert a hash as well.

Oct 18, 2014