New Immissions/Updates:
boundless - educate - edutalab - empatico - es-ebooks - es16 - fr16 - fsfiles - hesperian - solidaria - wikipediaforschools
- wikipediaforschoolses - wikipediaforschoolsfr - wikipediaforschoolspt - worldmap -

See also: Liber Liber - Libro Parlato - Liber Musica  - Manuzio -  Liber Liber ISO Files - Alphabetical Order - Multivolume ZIP Complete Archive - PDF Files - OGG Music Files -

PROJECT GUTENBERG HTML: Volume I - Volume II - Volume III - Volume IV - Volume V - Volume VI - Volume VII - Volume VIII - Volume IX

Ascolta ""Volevo solo fare un audiolibro"" su Spreaker.
CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
Dyskusja:Rok przestępny - Wikipedia, wolna encyklopedia

Dyskusja:Rok przestępny

Z Wikipedii

Wszystko jest fajnie opisane tylko brakuje wyjaśnienia skąd bierze się 29 dzień lutego co cztery lata a gdzie wytłumaczenie

"Historia lat przestępnych, umożliwiających zgranie roku kalendarzowego z rokiem zwrotnikowym"

Spis treści

[edytuj] Algorytm

[edytuj] Nawiasy

Nux zakłada, że AND i OR mają priorytety jak + i -, co tworzy mylne wrażenie, że zmiana kolejności podwyrażeń z AND i OR nie zmienia wartości całego wyrażenia, co jest oczywiście nieprawdą, co można łatwo udowodnić. Tu chodzi o to, że podwyrażenie z AND ma mieć wyższy priorytet (no i też często przyjmuje się, że AND jest "wazniejsze" niż OR, jednak nigdzie nie znalazlem takiego zalozenia). Albo zapiszcie to zalozenie, albo zostawcie te nawiasy w spokoju. Co do interpunkcji wiem, że przed "lub" nie stawia się przecinka, jednak w tym przypadku taki przecinek zmienia znaczenie (odpowiada nawiasowi wokol AND), wiec warto go zostawic... --83.30.89.165

Ale ja nie napisałem, że są przemienne po prostu jak mają ten sam priorytet, to wykonuje je się w kolejności otrzymywania... Z drugiej strony widzę, że w rzeczywistości część języków programowania rozróżnia priorytety dla AND i OR. Szczerze powiedziawszy nie bardzo rozumiem po co - przy zachowaniu kolejności (a taka jest zachowana w odwrotnej notacji polskiej) wszystko i tak jest w porządku. No, ale jeśli się upierasz, to OK - możesz dodać nawiasy, chociaż według mnie nie ma to praktycznego znaczenia. --Nux (dyskusja) 01:12, 18 mar 2007 (CET)

[edytuj] Inne

Dla tych, którzy mają wątpliwości odnośnie algorytmu:

Cytat ten artykuł:
...podzielny przez 4, ale nie jest podzielny przez 100, lub jest podzielny przez 400

Co dokładnie daje:

if (rok%4==0 && rok%100!=0 || rok%400==0)
    luty = 29;
else
    luty = 28;

Czyli dla przykładu:

  • 1900 -> luty = 28 (poprawka co 100 lat)
  • 2000 -> luty = 29 (poprawka co 400 lat)
  • 2004 -> luty = 29 (poprawka standardowa co 4 lata)

Jeśli ktoś chce może sobie sprawdzić słuszność wprowadzanych poprawek w sekcji Bieżący błąd. --Nux 17:13, 17 lut 2006 (CET)

[edytuj] Zmiany w algorytmie

Ktoś zmienił na formę:

bool Przestepny(unsigned rok)
{
     if (rok%4==0 && rok%100!=0 || rok%400==0) return true;    
     else return false;      
}

I tu już został popełniony błąd, bo bool nie istnieje w języku C (co za pewne może być dla niektórych zaskoczeniem), a konkretniej nie istnieje w ANSI C, bo w niektórych nowych C tak, ale tak naprawdę to istnieje dopiero w C++.

Skasowałem tą wersję zamiast poprawić, bo algorytm staje się przez to mniej uniwersalnym (pomijając już to, że użycie funkcji jest tu dla mnie nie uzasadnione, bo ona wcale nie jest samotłumacząca się).

Kolejne wersje moim zdaniem zaciemniały tylko skąd się to bierze, a bierze się ze zdania wytłuszczonego w artykule i zacytowanego powyżej. Przywrócona wersja jest też dlatego własnie (według mnie) lepsza, że spójna z resztą artykułu.

A jak ktoś woli, to może sobie zapisać tak:

l=(!(rok%4)&&rok%100||!(rok%400))?29:28;

ale chyba nie o to chodzi ;). Nux >dyskusja< 22:40, 25 mar 2006 (CET)


Zamknięcie w funckje bynajmniej nie jest zabiegiem czysto formalnym - w poprzedniej wersji użytkownik oprócz wklejenia tekstu musiałbyby zadeklarować zmienną luty, zainicjować zmienną rok - w przypadku funkcji postulat "czarnej skrzynki" jest najważniejszy - wystarczy wkleić treść funkcji i korzystać właśnie na zasadzie czrnej skrzynki... i właśnie wtedy jest to rozwiązanie uniwersalne (bo na dobrą sprawę można tą funkcję przerobuić na część biblioteki dll co w poprzednim przypadku nie byłoby takie łatwe) . No bo wyobraźcie sobie "duży" program rysujący kalendarz, wyliczający różnice między datami - czy łatwiej jest do każdej tej funkcji wkleić treść poprzednią, czy po prostu dodać plik z definicją Przestepny(rok) i sprawdzać (czytelność + zwięzłość kodu).

Oczywiste, że artykuł ten nie jest stricte informatyczny, i nie chodzi o niuanse c ale o sam algorytm sprawdzania przestępności roku, jednak nie usprawiedliwia to nie stosowania się do elementarnych zasad inżynierii programowania!


Niech będzie - byleby już nikt nie dodawał kolejnych funkcji w ich ulubionym języku programowania, bo ta część już jest niewiele mniejsza od reszty artykułu ;). Nux >dyskusja< 12:22, 29 mar 2006 (CEST)

[edytuj] dlaczego luty

Dlaczego właśnie luty ma 28 i 29 dni, a nie np. czerwiec?


Myślę, że dlatego, że jest najkrótszy. A dlaczego jest najkrótszy to już nie wiem - może tak wychodziło z faz księżyca, albo coś. Nux >dyskusja< 23:19, 2 mar 2006 (CET)

Niezupełnie - kiedyś też miał do 30 dni, ale z niego obcięto trochę dla Augustusa i Juliusa. Gdzieś niedawno o tym czytałem, jak znajdę źródło, to napiszę. Argothiel 21:16, 7 mar 2006 (CET)to chyba jednak nie miejsce na historię lutego:)

Historia kalendarza rzymskiego jest na wiki, nie wiem czy wszystko opisano.

StoK 22:23, 7 mar 2006 (CET)


to moze jeszcze ja. kiedyś luty był ostatnim miesiacem w roku i jego dlugością regulowano właśnie liczbe dni w roku. patrzac na nazwe October - październik a oznacza osiem, December - grudzień a oznacza dziesiec. i tyle - prosta historia, niestety nie pamietam czemu sie przesuneło na "od stycznia"

[edytuj] Małe zmiany

  • To nie są funkcje boolowskie, dziedziną funkcji w tym artykule sa "unsigned int" czyli N "plus" {0}. Dziedzina funkcji boolowskiej jest B^m, gdzie B={0,1}
  • Zazwyczaj używa się notacji, w której nazwy metod i zmienych zaczynają się od małych liter.

Pan Camel 22:46, 30 mar 2006 (CEST)

Z notacją to różnie bywa, ale w sumie racja. Nux >dyskusja< 04:11, 1 kwi 2006 (CEST)

[edytuj] Nie wyłącznie ..

W kalędarzach księżycowych też jest rok przestępny, to rok w którym wstawiany jest dodatkowy miesiąc.

nie całkiem; kalendarz islamski jest księżycowy, liczy 12 miesięvy, nie ma miesięcy dodatkowych. Wystepują one natomiast w kalendarzach księżycowo-słonecznych, np. w żydowskim. kaszkawal 13:50, 14 maja 2006 (CEST)

Static Wikipedia (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2006 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia February 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu