[ edit ]

   1 # ----- ツェラーの公式(合同式) ---------------------------
   2 def zeller_congruence( year, month, day ):
   3     # ----- 1月と2月は,前年の13月と14月とみなします -----
   4     if month == 1 or month == 2:
   5         month += 12
   6         year  -= 1
   7     # ----- Cは西暦の上2桁(世紀), Yは西暦の下2桁 ---------
   8     C = int( year/100 )
   9     Y = int( year%100 )
  10     Gamma = int( 5 * C  + int( C / 4 ) )
  11     D = (day + int( 26 * ( month + 1 ) / 10 ) + Y + int( Y / 4 ) + Gamma + 5) % 7
  12     # ----- Dの値は.0のとき月曜,1のとき火曜, ..., 6のとき日曜を意味します -----
  13     return( int( D ) )

SoftEng: Python/Prog/Practice/Basic/02/BP_004a/Digest (last edited 2019-10-16 14:36:45 by TadashiIijima)