DCF ptakovina - videli jste to uz nekdy?
Jakub Ladman
ladmanj@volny.cz
Pondělí Únor 18 01:09:42 CET 2008
Dne Sunday 17 February 2008 17:55:25 Jiri Bezstarosti napsal(a):
> Staci urcit pocet dni od zacatku nejakeho roku co uz byl, pricist jakym
> dnem ten rok zacal a pak modulo sedmi ;).
To jsem vedel i bez tebe :-) ale stejne mam dneska neuveritelny zachvat
blbosti. Nedovedu pochopit proc mi tohle nefunguje:
Rok je 0-99, prvni den i mesic jsou 1, ve vystupu ma byt pondeli 0.
int days_in_month[] = {31,28,31,30,31,30,31,31,30,31,30,31,29};
int dvt (int rok, int mesic, int den) {
int d;
d = rok + 4; //za kazdy rok od 1.1.1996 pricteme den
d += (d/4); //za kazdy uplynuly prestupny rok pricteme den
int i,j;
for(i=mesic-1;i>0;i--){ //pro kazdy cely uplynuly mesic soucasneho roku
//budeme pricitat pocet jeho dnu
j = i-1; //index poctu dnu v mesici v tabulce
if ((j==1)&&!(rok%4)) j=12; //je-li aktualne zpracovavany mesic unor
//a je-li prestupny rok
//koukneme se na alternativni delku unora
d += days_in_month[j];
}
d += den;//-1; //pricteme pocet uplynulych dnu v aktualnim mesici
return d%7;
}
Nic nechapu, srovnavam-li to s kalendarem pro ruzne roky, tak to nekdy sedi
nekdy ne, asi jsem uz uplny zhovadilec :-(
Jakub Ladman
Další informace o konferenci Hw-list