The date and time functions supplied with Perl (gmtime and localtime)
supply adequate information to determine the year well beyond 2000
(2038 is when trouble strikes for 32-bit machines). The year returned
-by these functions when used in an array context is the year minus 1900.
+by these functions when used in a list context is the year minus 1900.
For years between 1910 and 1999 this I<happens> to be a 2-digit decimal
number. To avoid the year 2000 problem simply do not treat the year as
a 2-digit number. It isn't.
my $i;
for ($i = @$array; --$i; ) {
my $j = int rand ($i+1);
- next if $i == $j;
@$array[$i,$j] = @$array[$j,$i];
}
}