[elektro] Még nem sejtek semmit...

Steve istvan.retaller at gmail.com
Fri Oct 16 22:40:23 CEST 2015


Ha valakit komolyan érdekel, zavaró lehet a weekday használata az 
elején. Csak a végén kap értéket, addig átmeneti változónak használom.

2015-10-16 22:34 keltezéssel, Steve írta:
>
> 2015-10-16 21:11 keltezéssel, Horvath Janos írta:
>
>   > Félelmetes figurák, bár igaz, olyan öröknaptár algoritmust a világon nem
>   > láttam, amit egy cetlire levésett egyikük (hülye vagy Te ehhez, nesze
>   > paraszt), valahol itt kell még lennie...csak nem értem :)
>
> Én nem vagyok matematikus, de most kellett ilyet csinálnom és azért nem
> volt egy nagy durranás. Egy picikét bonyolultabb a szükségesnél, mert
> még azt is számolom, hogy a tavaszi - őszi óraátállítás mikorra esik.
>
> void calendar(void)
> {
> weekday=year-1;
> spring=(365*year)+(weekday>>2);
> elapsed=spring;                            // csak a teljes eltelt évek
> spring+=(31 + 28 + 25);                        // jan + febr + 25 nap
> if ((year & 3) == 0) { spring+=1; }                // szökőév esetén a
> tavaszváltás egy nappal később lesz
> autumn=spring+(31+30+31+30+31+31+30);                // márc...szept
> spring+=7-(1+((5+spring))%7);                    // ennyi nap kell
> vasárnapig
> autumn+=7-(1+((5+autumn))%7);                    // ennyi nap kell
> vasárnapig
>
> if (month > 1)
>       {
>       for (weekday=1;weekday<month;weekday++)
>           {
>           elapsed+=pgm_read_byte(&month_table[weekday]);
>           }
>       }
>
> elapsed+=day;
> if (((year & 3) == 0) && (month>=3)) {elapsed++;}            // ha a
> szökőév szökőnapja elmúlt
> weekday=1+((5+elapsed))%7;
> // Monday=1, Sunday=7
> }
>
>
> -----------------------------------------
>            elektro[-flame|-etc]
>
>



More information about the Elektro mailing list