!!"qreki.pl"に干支(日)を加える 「[旧暦計算ライブラリ(Perlによる旧暦計算プログラム)|http://www3.biwako.ne.jp/~nobuaki/qreki/index.html]」の"qreki.pl"に,「[旧暦 for VB|http://www.vector.co.jp/soft/win95/personal/se243537.html]」の"旧暦.bas"を参考にして,その日の干支を加えてみた。 !!"qreki.pl" calc_kyureki 新暦に対応する、旧暦を求める ($Qyaer,$uruu,$Qmon,$Qday,$kannshi) = &qreki'calc_kyureki($year,$mon,$day); !引数 $year,$mon,$dayは,現行の西暦から与える。年部は4桁。 !戻値 $Qyear,$Qmon,$Qdayは,各々旧暦の年月日で,$uruuに「0:平月 1:閏月」 $kannshiは,その日の干支(文字型)。 !加工 つぎは"WinMerge"を使って差分を表したもの。; ツ−ル/パッチの生成/出力形式/ユニファイド --- C:/qreki.pl +++ C:/qreki20090318.pl Wed Mar 18 14:44:24 2009 @@ -194,7 +194,18 @@ $kyureki[0]--; } - return($kyureki[0],$kyureki[1],$kyureki[2],$kyureki[3]); +#------------------------------------------------------------------------ yssh ↓ ----------------# +#日 干支 を 加える + + local(@Jukkan10)=( "甲","乙","丙","丁","戊","己","庚","辛","壬","癸" ); # 十干 + local(@Jukkan12)=( "子","丑","寅","卯","辰","巳","午","未","申\","酉","戌","亥" ); # 十二支 + my ($Jukkan,$j0,$j2,$j3); + $j0=$tm0 / 2; $j1=int($j0)%5 ; $j3=$tm0 % 2; $j0=$j1+$j1+$j3; + $j1=$tm0 - 10; $j2=$j1 % 12; + $Jukkan = $Jukkan10[$j0].$Jukkan12[$j2]; + + return($kyureki[0],$kyureki[1],$kyureki[2],$kyureki[3],$Jukkan); +#------------------------------------------------------------------------ yssh ↑ ----------------# } {{category yssh06}}