# Conditional Float Precision

**URL:** <https://www.ruby-forum.com/t/conditional-float-precision/124673>\
**Category:** Rails\
**Created:** [December 31, 2007, 11:19pm UTC](https://www.ruby-forum.com/t/conditional-float-precision/124673 "2007-12-31T23:19:21Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![blaine](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/51bf81/32.png) [@blaine](https://www.ruby-forum.com/u/blaine)\
**Post date:** [December 31, 2007, 11:19pm UTC](https://www.ruby-forum.com/t/conditional-float-precision/124673/1 "2007-12-31T23:19:21Z")

</div>

I’m trying to figure out the best way (and hopefully leanest) to  
conditionally have precision to a float number.

Here’s what I’m doing…

I have a float (which has a default precision of 1) so like 250.0

What I want to do is have the precision go to 0 if the value after  
the . is 0 = so 250.0 would show as 250, but 250.5 would show 250.5.

Thoughts? Thanks.

---

<div class="post-metadata">

**Author:** ![blaine](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/51bf81/32.png) [@blaine](https://www.ruby-forum.com/u/blaine)\
**Post date:** [December 31, 2007, 11:33pm UTC](https://www.ruby-forum.com/t/conditional-float-precision/124673/2 "2007-12-31T23:33:23Z")

</div>

Write a simple helper method that returns the rounded number if  
different

def display\_float(num)  
if num.floor \< num  
return num  
end  
return num.floor  
end

---

<div class="post-metadata">

**Author:** ![blaine](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/51bf81/32.png) [@blaine](https://www.ruby-forum.com/u/blaine)\
**Post date:** [December 31, 2007, 11:50pm UTC](https://www.ruby-forum.com/t/conditional-float-precision/124673/3 "2007-12-31T23:50:54Z")

</div>

Brewpoo - sweet! Thanks.
