in fiddling with a perl script to calculate the variable
dates dependent on the date of easter, using Time::Local, i
got the wrong answers for shrove tuesday 47 and ash
wednesday 46 days before easter.  this turned out to be what
appears to me as an anomoly in Time::Local at 20170313 where
the delta seconds between days was 3600 sec short.  a test
script then found a corresponding anomoly at 20171106 where
the delta seconds was 3600 sec long.  fwiw i attach the test
script.  have i missed something obvious?

#! /usr/bin/perl
# tsttme.pl
# created 170129 by jdm3
# revised 170129 by jdm3

  use strict;
  use Time::Local;

  my ($dlt, $dte, $tme, $tmepre, $mth, $Mth, $day, $year, );
  my (@dim, @mth, );

  $year = $ARGV[0];
  if (! $year) {
      printf ("enter the year, stupid.\n");
      exit (0);
  }

  @dim = qw (31 28 31 30 31 30 31 31 30 31 30 31);
  @mth = (0 .. 11);

  if ($year%4 == 0) { $dim[1] = 29; }
# printf ("feb: $dim[1]\n");

  $tmepre = &Time::Local::timelocal (0,0,0,31,11,$year-1901);
  foreach $mth (@mth) {
      foreach $day (1..$dim[$mth]) {
          $tme = &Time::Local::timelocal (0,0,0,$day,$mth,$year-1900);
          $dlt = $tme - $tmepre;
        # printf ("$year$mth$day -- $dlt\n");
          $day = sprintf ("%02d", $day);
          $Mth = sprintf ("%02d", $mth+1);
          if ($dlt != 86400) { printf ("$year$Mth$day -- $dlt\n"); }
          $tmepre = $tme;
      }
  }

##########################################################################

tia,
ole dan


j. daniel moylan
84 harvard ave
brookline, ma 02446-6202
617-777-0207 (cel)
j...@moylan.us
www.moylan.us
[no html pls]

_______________________________________________
Boston-pm mailing list
Boston-pm@mail.pm.org
http://mail.pm.org/mailman/listinfo/boston-pm

Reply via email to