# Averaging

**URL:** <https://www.ruby-forum.com/t/averaging/134731>\
**Category:** Rails\
**Created:** [April 14, 2008, 3:31pm UTC](https://www.ruby-forum.com/t/averaging/134731 "2008-04-14T15:31:50Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![edberner](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/e/f9ae1b/32.png) [@edberner](https://www.ruby-forum.com/u/edberner)\
**Post date:** [April 14, 2008, 3:31pm UTC](https://www.ruby-forum.com/t/averaging/134731/1 "2008-04-14T15:31:50Z")

</div>

Why can I call this

\<%= team.players.sum(:misses) %\>  
and this  
\<%= team.players.sum(:misses) %\>

but this gives me 0 (some do not have 0 for misses)

\<%= team.players.sum(:hit) /  
team.players.sum(:misses) unless team.players.sum(:misses) == 0 %\>\</  
td\>

---

<div class="post-metadata">

**Author:** ![edberner](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/e/f9ae1b/32.png) [@edberner](https://www.ruby-forum.com/u/edberner)\
**Post date:** [April 14, 2008, 4:14pm UTC](https://www.ruby-forum.com/t/averaging/134731/2 "2008-04-14T16:14:23Z")

</div>

Say hits = 2 and misses = 4. In Ruby, 2/4 = 0. However, 2.0/4.0 = 0.5.  
Try  
those expressions in irb.

To solve your problem, you could convert the numbers to floats:  
hits.to\_f /  
misses.to\_f = 2.0 / 4.0 = 0.5.

The docs for Number#divmod might be helpful.  
[http://www.noobkit.com/show/ruby/ruby/ruby-core/numeric/divmod.html](http://www.noobkit.com/show/ruby/ruby/ruby-core/numeric/divmod.html)

Craig
