Преступна година

Иди на навигацију Иди на претрагу

Преступна година је година која има 366 дана, за разлику од осталих година које имају 365 дана. Разлог томе је усклађивање календарске године са астрономском годином, да не би с временом Нова година пала у лето, а грожђе дозревало у децембру или јануару. Тако месец фебруар, који иначе има 28 дана, у преступној години има 29 дана.

Године које нису преступне се зову просте године.

Преступне године су све дељиве с 4, ако нису дељиве са 100, мада ипак јесу ако су дељиве са 400.

Дакле године 1800, 1900. и 2100. нису преступне, док 1600, 2000. и 2400. јесу (све ово се односи на грегоријански календар).

Алгоритам

На основу правила која одређују преступну годину се дâ формирати алгоритам, који даје позитиван одговор ако је задовољен следећи скуп услова:

  1. број године дељив са четири, и
  2. важи једно од следећа два:
    • број године није дељив са 100
    • број године је дељив са 400

Имплементација

Разне имплементације ове функције су могуће на постојећим програмским језицима. Нпр. C-функција, која враћа 1 уколико је година преступна, а иначе 0, би гласила:

int prestupna(int godina)
{
  return
    !(godina & 3)          // број године дељив са 4?
    &&
    (
      godina % 100         // број године није дељив са 100?
      || !(godina/100 & 3) // број године дељив са 400?
    );
}


У Pascal-у функција за одређивање преступне године изгледа на следећи начин:

Function Prestupna (Godina : Integer) : Boolean;
Begin
   If ((Godina mod 400=0) or 
      ((Godina mod 100<>0) and (Godina mod 4=0))) Then Prestupna:=TRUE
                                                  Else Prestupna:=FALSE;
End;

У Javascript-у функција за одређивање преступне године изгледа на следећи начин:

var godina = prompt("unesite godinu");

  if(godina%400 === 0) {
     alert("godina je prestupna");
} else if ((godina%100 !==0) &&(godina%4 === 0)){
     alert("godina je prestupna");
}
  else{
     alert("godina nije prestupna");
}

Спољашње везе

Prestupna godina - Astronomski magazin

The article is a derivative under the Creative Commons Attribution-ShareAlike License. A link to the original article can be found here and attribution parties here. By using this site, you agree to the Terms of Use. Gpedia Ⓡ is a registered trademark of the Cyberajah Pty Ltd.