ふなばです。 >>> Fri, 12 Mar 1999 14:48:47 +0900 の刻に 「ikarashi」、すなわち >>> ikarashi / itlb.te.noda.sut.ac.jp(IKARASHI Akira) 氏曰く ikarashi> というわけで、負数対応した修正版です。 ikarashi> atで新たにインスタンスを作りなおすようにしたので、 ikarashi> 状態は localtime ですが、誤りはなくなったと思います。 五十嵐さんのマネして、僕も書いてみました。閏秒も考慮したつもり。 class Time def addmon(n) d = Time.at(self) x = d.year * 12 + (d.mon - 1) + n y = x / 12 m = x % 12 + 1 g = Time.mktime(y, m, d.mday, 12) until g.mon == m g -= 86400 end g = Time.mktime(g.year, g.mon, g.mday, d.hour, d.min, d.sec) until g.min == d.min g -= 1 end g end end p Time.now.addmon(33) ふなば ただよし