Regina Schaukrug: Meine dumme Frage zum Jahresende: Anzahl der Kalenderwochen im Kalenderjahr.

Beitrag lesen

problematische Seite

Mach aus dem und ein oder dann stimmts 😉

Ihr Habt beide recht. Ich hab bei Wikipedia zu schnell gelesen. Da steht "oder".

#!/usr/bin/perl -W

use POSIX;

for ( $i=2000; $i<2100; $i++ ) {
        print ( $i, " : ",  getWeeksOfYear($i), "\n" );
}
exit;


sub getWeekdayFromYMD {
    return strftime( '%w', 1, 1, 1, $_[2], $_[1]-1, $_[0]-1900 );
}


sub getWeeksOfYear {
    if  (
            ( 4 == getWeekdayFromYMD( $_[0], 1 , 1  ) )
            or
            ( 4 == getWeekdayFromYMD( $_[0], 12, 31 ) ) 
    ) {
        return 53;
    } else {
        return 52;
    }
}

So. jetzt stimmts.

Wo siehst Du ein Jahr-2000-Problem?

Wenn dauernd etwas wie $_[0]-1900 notwendig wird, dann hat die Sprache einen Knacks. JS ist also auch betroffen. Sowas verleitete vor anno 2k geradezu dazu, mit zweistelligen Jahreszahlen zu rechnen.