#!/usr/local/bin/perl sub dayofyear { ($day1,$month,$year)=@_; my(@d_in_m)=(0,31,28,31,30,31,30,31,31,30,31,30,31); $d_in_m[2]=29 if (&leap($year)); for($i=1;$i<$month;$i++) { $k += $d_in_m[$i]; } $k += $day1; return $k; } sub leap { $y = shift; return 0 unless $y % 4 == 0; return 1 unless $y % 100 == 0; return 0 unless $y % 400 == 0; return 1; } print dayofyear(10,3,2005);