Dar vieno analitiko svetainė

Petras Kudaras

Darbai, mokslai…

Nagi prasidėjo sesija. Be to ir darbai nesibaigia. Tai reiškia, kad
aš čia per daug nesireikšiu kokias porą savaičių.

Beje, prašė manęs šiandien parašyti perlinę programėlę, kuri
išrinktų visas šių metų dienas, kur yra savaitgaliai. Didžiausias
klausėjo nustebimas buvo tas, jog jei pateiki funkcijai
Date::Calc->Day_of_Week() blogai suformuotą datą
(tarkim 20012 metų 15 mėnesio 89 dieną) tai ji nesikeikia. Na,
funkcija tokiu atveju grąžina 0, kai normliai grąžint turi nuo 1 ki 7,
tad jei nori ieškotis errorų, gali juos rast. Matyt tas žmogus visai
Perlo neragavęs (netgi turbūt skriptinių programavimo kalbų irgi
nelabai matęs) kad jį tokie dalykai stebina. Štai kodas (hmmm.. reikia
kažkokį Perlo kodo archyvą kurt ;):

use Date::Calc qw/Day_of_Week/;
my @menesiai = qw/sausio vasario kovo balandžio gegužės birželio
               liepos rugpjūčio rugsėjo spalio lapkričio gruodžio/;
for my $menuo (1..12) {
  for my $diena (1..31) {
    my $d = Day_of_Week(2003, $menuo, $diena);
    if($d == 6 or $d == 7) {
      print($menesiai[$menuo - 1], " $diena\n");
    }
  }
}

Oh, beje turbūt šitas pavyzdys kartu ir įrodo jog Perlo kodas
gali būti ir įskaitomas ;)