當前位置:編程學習大全網 - 編程語言 - 2009年2月幹支中14怎麽表示?

2009年2月幹支中14怎麽表示?

將公歷轉換為幹歷

我們先來看看年度分支和支出的計算。Y年,比如2005年,就是Y = 2005公元前的年齡應該改成負號年齡,比如公元前2070年y=-2069。計算壹個值:a = y-4;然後計算gz值:gz=a-[a/60]*60,其中[

]表示整數運算,如[8.75]=8。如果gz的值為負值,那麽gz=gz+60,使其為正值。這個gz值是六十甲子的數。例如,對於2005年,y=2005,a=2001,a/60=33.35,符出點非點點點桑迪吉[a/60]=33,gz=21,21為。對於公元前2070年,y=

-2069,a=

-2073,a/60=

-34.55,[a/60]=

-34,gz=

-33,gz=

-33+60=27,那麽第壹個2070年就是辛卯年。

也可以由a的值計算出壹年生主幹或壹年生枝,天幹值為:g=a-[a/10]*10,若g為負,則g=g+10。地支值為:z=a-[a/12]*12,若z為負,則z=z+12。例如,在公元前2070年,a=

-2073,g

=

-3,g=7,z=

-9,z=3 .g值7對應天幹的“辛”,Z值3對應地支的“卯”,所以第壹個2070年是辛卯年。

再看日分支的計算,主要是先把公歷日期換算成儒略日,再用儒略日計算日分支。因為儒略日在中午開始新的壹天,在這裏我們不妨同意某壹天的儒略日對應於當天的中午。有許多方法來計算儒略日。這裏只選擇了壹種適合編程的方法(括號中的例子):

1)表示y年m月d日。(例如,在2005年2月9日的12,則Y

=

2005年m

=

2,d=9)

2)如果是1,二月(m=1,m=2),那麽:m=m+12,y=y-1。(因為m=2,m=14,y=2004)

3)計算壹個值:a=[30.6001*(m+1)]

。(a =[30.6001 *(14+1)]=[459.0015]= 459)

4)計算b的值:1582 10 10月4日(含)之前,b = 0;1582 65438+10月15(含)之後,b=2-[y/100]+[y/400]。(因為1582之後,b = 2-[2004/100]+[2004/400]= 2-20+5 =

-13)

5)計算c的值:如果y

6)計算縮減後的儒略日mjd值(10月份從1900 1.5的天數):MJD = a+b+c+d .(mjd = 459-13+37936+9 = 38391)

7)計算儒略日的jd值:

jd=mjd+2415020 .(JD = 38391+2415020 = 2453411)

例如,2005年2月9日的儒略日12是2453411,或者省略12時,2005年2月9日的儒略日是2453411。計算儒略日的時候也要註意公元前的年代,先把它變成負號年代。

將儒略日轉換為每日分支非常簡單。對於儒略日的jd值,計算ad值:AD = JD-11;然後計算gz值:gz=ad-[ad/60]*60,這是主枝數。比如儒略日是2453411,那麽ad=2453400,gz=0,對應的分支是甲子,說明這壹天是甲子日。妳也可以從廣告價值中單獨計算每日主幹或每日分支。空中幹線值為g=ad-[ad/10]*10,地面支線值為z=ad-[ad/12]*12。

順便說壹下,通過儒略日來計算星期幾也很容易。對於儒略日的jd值,計算ax值,AX = JD+1;然後計算xq值:xq=ax-[ax/7]*7,當xq值為0時,為星期日,其余為星期幾。如果2005年2月9日的儒略日是2453411,ax=2453412,xq=3,那麽那壹天就是星期三。

  • 上一篇:任天堂不給友商留活路!盤點2022年Switch上最為重量級的10款遊戲
  • 下一篇:細分領域隱形冠軍:湖北三環鍛造有限公司
  • copyright 2024編程學習大全網