Loop through months (1-12)
If that really is all you need to calculate, then it's not too bad.

However, I suspect that you have other date calculations happening in your application.  In that case, why not take advantage of Ruby's Date class?  The &gt;&gt; operator adds months.

require 'date'
next_period = (Date.today &gt;&gt; tax_period_months).month