桑島雄一郎です。

-- source --
- FROM   : Take_tk <ggb03124 / nifty.ne.jp> さん
- DATE   : Sun Mar 17 01:30:01 +0900 2002
- SUBJECT: [ruby-list:34470] days_in_month ← Re:  Re: カレンダー文字列を作るメソッド

乗り遅れてますが。
関数定義しないで閏年を調べるなら

require 'date'

p Date.new(Time.now.year,Time.now.month).leap?
  => 今月(2002/03)は false

配列を返すだけのクラスなら作ったことがあります。
こういうのって月曜スタートには対応しなくてもいいんですかね?

require 'date'

class Calendar

  def initialize(year = Time.now.year,month = Time.now.month)
    @year = year
    @month = month
    if Date.new(@year,@month).leap?
      @days = [31,29,31,30,31,30,31,31,30,31,30,31].slice(@month-1)
    else
      @days = [31,28,31,30,31,30,31,31,30,31,30,31].slice(@month-1)
    end
  end

  def array1
    a = []
    Date.new(@year,@month).wday.times{ a.push(nil) } #カレンダー用に空白を補遺
    @days.times {|x| a.push(x+1) }
    a
  end

  def array2
    a = array1
    a2 = []
    until a.empty? do
      a2.push(a.slice!(0..6))
    end
    a2
  end

end

--
--------------------------Mon Mar 18 06:34:42 JST 2002--
桑島雄一郎
    mailto:kanimiso / eins.rnac.ne.jp