[#38716] 多重配列 — Teppei <te-uno@...>
宇野といいます。はじめまして。
10 messages
2003/11/01
[#38717] Re: 多重配列
— Take_tk <ggb03124@...>
2003/11/01
たけ(tk)です。
[#38724] 祝日判定用メソッド — Take_tk <ggb03124@...>
たけ(tk)です
19 messages
2003/11/02
[#38743] Re: 祝日判定用メソッド
— Tadayoshi Funaba <tadf@...5.so-net.ne.jp>
2003/11/03
http://www.h3.dion.ne.jp/~sakatsu/holiday_logic4.htm#Apollo
[#38725] Re: 祝日判定用メソッド
— Beyond <beyond@...>
2003/11/02
[#38727] Re: 祝日判定用メソッド
— Tadayoshi Funaba <tadf@...5.so-net.ne.jp>
2003/11/02
ちょっと見ただけですけど、気になるところがありますね。
[#38729] Re: 祝日判定用メソッド
— Take_tk <ggb03124@...>
2003/11/02
たけ(tk)です。
[#38731] 割り算で答えの整数部分だけを取り出す方法 — "S.Nobuhiro" <s-nob@...>
Nobuhiroと申します。
5 messages
2003/11/02
[#38747] [1.8.1p2] ''リテラルの行末エスケープ — "Shirai,Kaoru" <shirai@...>
白井です。
5 messages
2003/11/03
[#38756] ruby-dev summary 21730-21822 /draft — Minero Aoki <aamine@...>
青木です。
14 messages
2003/11/05
[#38761] Re: ruby-dev summary 21730-21822 /draft
— Hiroharu Sugawara <sugawah@...>
2003/11/05
[#38781] convert EBCDIC to SJIS — "T.Fukagawa" <tfukaga@...01.gate01.com>
深川です。
8 messages
2003/11/10
[#38787] sjis正規表現エラー@二重打ちチェック — Naohiko Barada <naob@...>
初めてレポートします。 茨田と申します。よろしくお願いいたします。
5 messages
2003/11/11
[#38796] net/http set_debug_output — "NAKAMURA, Hiroshi" <nakahiro@...>
なひです。
7 messages
2003/11/15
[#38810] バックトレースの表示指定 — "U.Nakamura" <usa@...>
こんにちは、なかむら(う)です。
5 messages
2003/11/19
[#38814] new with module — "NAKAMURA, Hiroshi" <nakahiro@...>
なひです。
10 messages
2003/11/20
[ruby-list:38743] Re: 祝日判定用メソッド
From:
Tadayoshi Funaba <tadf@...5.so-net.ne.jp>
Date:
2003-11-03 09:24:38 UTC
List:
ruby-list #38743
http://www.h3.dion.ne.jp/~sakatsu/holiday_logic4.htm#Apollo
このコードを確認しましたが、敬老の日と徳仁親王の結婚の儀の判定が間違っ
ています。移植時の間違えのようで、元のコードは正しそう。
Apollo は知らないけど、確認のために、上のコードを手許で動くように適当
に直したものの差分を最後に添付します。
http://aglaia.c.u-tokyo.ac.jp/~yamamoto/Script/Calendar/
の Calendar.rb で、明仁親王結婚の儀 を 1959-03-17 としているけど、これ
は施行した日だと思われる。ちなみに、僕のコードでは、この件自体が欠落し
ていることが判明。近いうちに確認します。旧祝祭日についても、なにかあり
そうだけど、また今度。
--- Shukujitu.rb.orig Mon Nov 3 15:50:01 2003
+++ Shukujitu.rb Mon Nov 3 17:57:42 2003
@@ -1,4 +1,4 @@
-#! ruby -Ks
+#! ruby -Ke
#-- Shukujitu.rb
#-- Shukujitu.pi
@@ -32,26 +32,26 @@
## 2003-09-21(日):…とのことなので imported by take_tk
##
-require "phi"
+require 'date'
module Shukujitu
def self.shukujitu? date
- date = Phi::DateTime.new(date) unless date.is_a? Phi::DateTime
+ date = Date.parse(date) unless date.is_a? Date
kihon_shukujitu?(date) || hurikae_kyujitu?(date)
end
def self.hurikae_kyujitu? date
+ date = Date.parse(date) unless date.is_a? Date #?
return if date.wday != 1
- return if date < "1973/4/12"
- return '振替休日' if kihon_shukujitu? date.inc_day(-1)
+ return if date.jd < 2441785 # 1973-04-12
+ return '振替休日' if kihon_shukujitu?(date - 1)
return nil
end
def self.kihon_shukujitu? date
- date = Phi::DateTime.new(date) unless date.is_a? Phi::DateTime
- date = date.date
- return if date < "1948/7/20" # 祝日法施行前
+ date = Date.parse(date) unless date.is_a? Date
+ return if date.jd < 2432753 # 1948-07-20 # 祝日法施行前
year = date.year
month = date.month
day = date.day
@@ -85,7 +85,7 @@
when 5 ; return '子供の日'
end
when 6
- return '皇太子徳仁親王の結婚の儀' if (day == 3) && (year == 1993)
+ return '皇太子徳仁親王の結婚の儀' if (day == 9) && (year == 1993)
when 7
if year >= 2003
return '海の日' if ( shuu == 3) && (yobi == 1)
@@ -99,7 +99,7 @@
if year >= 2003
return '敬老の日' if (yobi == 1) && (shuu == 3)
return '国民の休日' if (yobi == 2) && (day == shuubun_day - 1)
- elsif year >= 1996
+ elsif year >= 1966
return '敬老の日' if (day == 15)
end
when 10
@@ -145,11 +145,8 @@
end
end # of module
-module Phi
-class DateTime
+class Date
def shukujitu?
Shukujitu.shukujitu?(self)
end
end
-end
-