# File AlmanacForRuby/AlmanacSolarTerm.rb, line 317 def get_cyuu_number(target_day) # 月ごとの、中の候補 # 1月の場合、中は"大寒"(SOLAR_TERM_NUMBER=23) # 2月の場合、中は"雨水"(SOLAR_TERM_NUMBER=1) # 3月の場合、中は"春分"(SOLAR_TERM_NUMBER=3) # 4月の場合、中は"穀雨"(SOLAR_TERM_NUMBER=5) # 5月の場合、中は"小満"(SOLAR_TERM_NUMBER=7) # 6月の場合、中は"夏至"(SOLAR_TERM_NUMBER=9) # 7月の場合、中は"大暑"(SOLAR_TERM_NUMBER=11) # 8月の場合、中は"処暑"(SOLAR_TERM_NUMBER=13) # 9月の場合、中は"秋分"(SOLAR_TERM_NUMBER=15) # 10月の場合、中は"霜降"(SOLAR_TERM_NUMBER=17) # 11月の場合、中は"小雪"(SOLAR_TERM_NUMBER=19) # 12月の場合、中は"冬至"(SOLAR_TERM_NUMBER=21) cyuu_number = 1 + 2 * (target_day.month - 2) if 0 > cyuu_number cyuu_number = 23 end # 対象日と同年の上記で求めた中番号の中の日が一致していることを # 確認する。 cyuu_day = get_sekki_date_time(target_day.year, \ target_day.offset, \ cyuu_number) if cyuu_day != target_day cyuu_number = 99 end return cyuu_number end