當前位置:編程學習大全網 - 源碼下載 - 為什麽正百的年數必須是可以被400整除的才是閏年?

為什麽正百的年數必須是可以被400整除的才是閏年?

閏年的定義

在公歷(格裏歷)紀年中,有閏日的年份叫閏年,壹般年份365天,閏年為366天。由於地球繞太陽運行周期為365天5小時48分46秒(合365.24219天)即壹回歸年,公歷把壹年定為365天。所余下的時間約為四年累計壹天,加在二月裏,所以平常年份每年365天,二月為28天,閏年為366天,二月為29天。因此,每400年中有97個閏年,閏年在2月末增加壹天,閏年366天。 閏年的計算方法:公元紀年的年數可以被四整除,即為閏年;被100整除而不能被400整除為平年;被100整除也可被400整除的為閏年。如2000年是閏年,而1900年不是。

程序4

題目:輸入某年某月某日,判斷這壹天是這壹年的第幾天?

1.程序分析:以3月5日為例,應該先把前兩個月的加起來,然後再加上5天即本年的第幾天,特殊

情況,閏年且輸入月份大於3時需考慮多加壹天。

2.程序源代碼:

main()

{

int day,month,year,sum,leap;

printf("\nplease input year,month,day\n");

scanf("%d,%d,%d",&year,&month,&day);

switch(month)/*先計算某月以前月份的總天數*/

{

case 1:sum=0;break;

case 2:sum=31;break;

case 3:sum=59;break;

case 4:sum=90;break;

case 5:sum=120;break;

case 6:sum=151;break;

case 7:sum=181;break;

case 8:sum=212;break;

case 9:sum=243;break;

case 10:sum=273;break;

case 11:sum=304;break;

case 12:sum=334;break;

default:printf("data error");break;

}

sum=sum+day; /*再加上某天的天數*/

if(year%400==0||(year%4==0&&year%100!=0))/*判斷是不是閏年*/

leap=1;

else

leap=0;

if(leap==1&&month>2)/*如果是閏年且月份大於2,總天數應該加壹天*/

sum++;

printf("It is the %dth day.",sum);}

如果不註意,大概很多人認為“閏月”與“閏年”是壹個意思,其實不然,雖說只是壹字之差,所包含的意思卻相差很遠。

“閏年”。我們通常所說的壹年365天,其實是個約數,準確的數字應是365.2422日。那麽壹年365天,就與實際的壹年相差O.2422日,這樣四年之後就比實際的壹年少了近壹天。為了彌補這個差值,歷法中規定,4年設壹閏,即能被4整除的年份為閏年,另附加規定,凡遇世紀年(末尾數字為兩個零的年份),必然被400所整除才算閏年。如1996年即閏年,2000年也是閏年,而1700年則不是閏年。陽歷閏年的二月有29天,2月29日為閏日,陽歷閏年有366天。也就是說陽歷閏年的二月不叫閏二月,閏月為農歷所特有。

現在再來說“閏月”。閏月指的是陰歷中的壹種現象,陰歷是按照月亮的圓缺即朔望月安排大月和小月,壹個朔望月的長度是29.5306日,是月相盈虧的周期,陰歷規定,大月30天,小月29天,這樣壹年12個月***354天,陰歷的月份沒有季節意義,這樣壹年就與陽歷的壹年相差11天,只需經過17年,陰陽歷日期就同季節發生倒置,譬如,某年新年是在瑞雪紛飛中度過,17年後,便要搖扇過新年了。使用這樣的歷法,自然是無法滿足農業生產的需要的,所以我國的陰歷自秦漢以來,壹直和24節氣並行,用24節氣來指導農業生產。

二十四節氣又可分為“節氣”和“中氣”二組:古人把從小寒起每隔黃經300為壹節氣;從冬至起每隔黃經300為壹中氣,壹年有12個節氣,12個中氣。12節氣把壹年分為12個節月,每個節月各有壹個節氣和壹個中氣。節氣是節月的起點;中氣是節日的中點。我國傳統歷法對於日序和月序以及大月、小月、平年和閏年,不象壹般歷法那樣采用長期安排的方法,而是強調逐年逐月的推算,國家設有專門的機構從事歷法的推算。

(壹)以月相定日序。它逐壹推算日月合朔的日期和時刻,每月的初壹就是合朔的日期;根據先後二次合朔包含的日數,確定前月的大小。如果從這壹合朔到下壹次合朔的間隔是30天,那麽當月便是大月;如果只隔29天,便為小月。

(二)以中氣定月序。首先,以歷月中有無中氣區分歷月和閏月,我們知道壹個回歸年有12個中氣,但卻包含365.2422÷29.5306=2.3682個朔望月,經過幾番歷月輪轉之後,必有壹個歷月沒有中氣。《漢書·律歷表》載:“朔不不得中,謂之閏月”。這個沒有中氣的月份便是閏月。它前壹歷日為幾月即為閏幾月。例如,1984年的那次閏月出現在舊歷十月之後,因而叫它“閏十月”。閏月是推算出來的,在壹年的月序中不固定,除農歷十壹月、十二月、正月外,閏幾月都可能,十九年七閏。

綜上所述,閏年是陽歷中的壹種現象,固定在二月,比平年加壹天,29天;閏月是陰歷中的壹個現象,閏壹個月,那壹年陰歷有13個月,那壹年叫閏月年。閏月年384天。

  • 上一篇:dnf虎年至尊禮包288值嗎?
  • 下一篇:小程序要怎麽去運營呢?
  • copyright 2024編程學習大全網