為什麼要采取“十九年七閏”的方法呢?一個朔望月平均是29.5306日,一個回歸年有12.368個朔望月,0.368小數部分的漸進分數是1/2、1/3、3/8、4/11、7/19、46/125,即每2年加1個閏月,或每3年加1個閏月,或每8年加3個閏月。經過推算,19年加7個閏月比較合適。因為19個回歸年=6939.6018日,而19個農曆年(加7個閏月後)共有235個朔望月,等於6939.6910日,這樣二者就差不多了。
另外,“十九年七閏”也隻是一個近似說法。實際上,春秋時代的天文學家曾經首創19年7閏的方法;祖衝之大明曆采用20組19年7閏插入1組11年4閏,計391年144閏,使農曆的平均曆年更接近回歸年;此外還有334年123閏、1021年376閏的提法,和回歸年的差額更小。但自清代以來,我國即完全采用天象確定曆月、曆年,從而使農曆的平均曆年與回歸年完全一致。7個閏月安插到19年當中,其安插方法可是有講究的。農曆閏月的安插,自古以來完全是人為的規定,曆代對閏月的安插也不盡相同。秦代以前,曾把閏月放在一年的末尾,叫做“十三月”。漢初把閏月放在九月之後,叫做“後九月”。到了漢武帝太初元年,又把閏月分插在一年中的各月。以後又規定“不包含中氣的月份作為前一個月的閏月”,直到現在仍沿用這個規定。
為什麼有的月份會沒有中氣呢?節氣之間或中氣之間相隔時間平均是30.4368日,而一個朔望月平均是29.5306日,所以節氣或中氣在農曆的月份中的日期逐月推遲,到一定時候,中氣不在月中,而移到月末,下一個中氣移到另一個月的月初,這樣中間這個月就沒有中氣,而隻剩一個節氣了。
上文說過,古人在編製農曆時,以12個中氣作為12個月的標誌,即雨水是正月的標誌,春分是二月的標誌,穀雨是三月的標誌。把沒有中氣的月份作為閏月就使得曆月名稱與中氣一一對應起來,從而保持了原有中氣的標誌。
從十九年七閏來說,在19個回歸年中有228個節氣和228個中氣,而農曆19年有235個朔望月,顯然有7個月沒有節氣和7個月沒有中氣,這樣把沒有中氣的月份定為閏月,也就很自然了。
農曆月的大小是很不規則的,有時連續2至4個大月或連續兩三個小月,曆年的長短也不一樣,而且差距很大。節氣和中氣,在農曆裏的分布日期很不穩定,而且日期變動的範圍很大。這樣看來,農曆似乎顯得十分複雜。其實,農曆還是有一定循環規律的:由於19個回歸年的日數與19個農曆年的日數差不多相等,就使農曆每隔19年差不多是相同的。每隔19年,農曆相同月份的每月初一日的陽曆日一般相同或者相差一兩天。每隔19年,節氣和中氣日期大體上是重複的,個別的相差一兩天。相隔19年閏月的月份重複或者相差一個月。
閏年和閏月
一年的準確的天數應該是365.24219日,我們平常所說的一年有365天,實際上是個約數。那麼一年365天,就與實際的一年相差0.2422日,這樣4年之後就比實際的一年少了近1天。為了彌補這個差值,曆法中規定,4年設一閏,即能被4整除的年份為閏年,另附加規定,凡遇世紀年(末尾數字為2個零的年份),必然被400所整除才算閏年。如1996年即閏年,2000年也是閏年,而1700年則不是閏年。陽曆閏年的二月有29天,二月二十九日為閏日,陽曆閏年有366天。也就是說陽曆閏年的二月不叫閏二月,閏月為農曆所特有。
閏月是我國陰曆中的另外的一種現象,陰曆是按照月亮的圓缺即朔望月安排大月和小月,一個朔望月的長度是29.5306日,是月相盈虧的周期,陰曆規定,大月30天,小月29天,這樣一年12個月共354天,陰曆的月份沒有季節意義,這樣一年就與陽曆的一年相差11天,隻需經過17年,陰陽曆日期就同季節發生倒置。譬如,某年新年是在瑞雪紛飛中度過,17年後,便要搖扇過新年了。使用這樣的曆法,自然是無法滿足農業生產需要的,所以我國的陰曆自秦漢以來,一直和二十四節氣並行,用二十四節氣來指導農業生產。