#!/usr/bin/perl -w ########################################### # dst_ger - Years with daylight savings # time in Germany # Mike Schilli, 2005 (m@perlmeister.com) ########################################### use strict; use DateTime; YEAR: for my $year (reverse 1964..2006) { for my $day (1..31) { my $dt = DateTime->new( year => $year, month => 3, day => $day, hour => 1, minute => 59, second => 59, time_zone => "Europe/Berlin", ); $dt->add(seconds => 1); if($dt->hour() == 3) { print "$year: DST\n"; next YEAR; } } print "$year: No DST\n"; last; }