阳历转化成农历法

合集下载

怎么根据公历推算农历年份天干地支

怎么根据公历推算农历年份天干地支

怎么根据公历推算农历年份天干地支其实有很多人纳闷要怎么根据现在的公历推算农历的天干地支纪年呢,今天就推荐大家一个方法。

天干地支【1】怎么算公元后的年份先用十天干对应阿拉伯数字0到9甲、乙、丙、丁、戊、己、庚、辛、壬、癸1、 2、 3、 4、 5、 6、 7、 8、 9、 0再用十二地支对应阿拉伯数字0到11子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥1、 2、 3、 4、 5、 6、 7、 8、 9、10、11、 0然后用一个公式:天干是公历年份减3再除以10之后的余数去对应上面列出的天干地支是公历年份减3再除以12之后的余数去对应上面列出的地支合起来就是那一年的农历年份比如2017年,2017减3之后除以10的余数是4对应是丁2017减3之后除以12的余数是10对应是酉2017就是丁酉年比如1911年,1911减3之后除以10的余数是8对应是辛1911减3之后除以12的余数是0对应是亥1911就是辛亥年,那年著名的辛亥革命【2】再来说说著名算公元前的年份。

由于公元前是有1,-1,-2,-3往后推得的,之前列的就要倒过来先用十天干对应阿拉伯数字0到9甲、乙、丙、丁、戊、己、庚、辛、壬、癸0、 9、 8、 7、 6、 5、 4、 3、 2、 1再用十二地支对应阿拉伯数字0到11子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥0、 11、10、9、 8、 7、 6、 5、 4、 3、2、 1也是用一个公式天干是公历前年份加3再除以10之后的余数去对应上面列出的天干地支是公历前年份加3再除以12之后的余数去对应上面列出的地支(记住跟公元后相反是加3哦)也照常举例子来验证下公元前100年,100加3之后除以10的余数是3对应辛100加3之后除以12的余数是7对应巳公元前100是辛巳年公元前221年,221加3之后除以10的余数是4对应庚221加3之后除以12的余数是8对应辰公元前221是庚辰年,是秦始皇统一中国,建立秦朝最后很多人疑问为什么要加3和减3呢?因为公历元年那年是辛酉年,跟天干地支纪年开始的甲子年差3年,所以必须要这样。

公历转农历方法

公历转农历方法

初一,以月望为十五(大月为十六日),以月晦为二十九日(大月为三十日)。

然而目前记时通常用阳历日期表达,如欲将阳历日期换算成阴历日期可以用以下两种方法:其一是查《新编万年历》,如查1984年6月8日是阴历几日?翻开万年历6月10日是阴历十一,则逆推6月8日是阴历初九。

其二可以利用公式推算阴历日期:设:公元年数-1977(或1901)=4q+r则:阴历日期=14q+10.6(r+1)+年内日期序数-29.5n(注:式中q、r、n均为自然数,r<4)例:1994年5月7日的阴历日期为:1994-1977=17=4×4+1故:q=4,r=1 则:5月7日的阴历日期为:14×4+10.6(1+1)+(31+28+31+31+7)-29.5n=204.2- 29.5n然后用29.5去除204.2得商数6......27.2,6即是n值,余数27即是阴历二十七日。

蔡勒(Zeller)公式:是一个计算星期的公式。

随便给一个日期,就能用这个公式推算出是星期几。

蔡勒公式如下:W = [ C/4 ] - 2C + y + [ y/4 ] + [ 13 * (M + 1) / 5] + d -1公式中的符号含义如下:W: 星期;w对7取模得:0-星期日,1-星期一,2-星期二,3-星期三,4-星期四,5-星期五,6-星期六C: 世纪-1(前两位数)y: 年(后两位数)m: 月(m大于等于3,小于等于14,即在蔡勒公式中,某年的1、2月要看作上一年的13、14月来计算,比如2003年1月1日要看作2002年的13月1日来计算)d: 日[ ]代表取整,即只要整数部分。

下面以中华人民共和国成立100周年纪念日那天(2049年10月1日)来计算是星期几,过程如下:w=y+[y/4]+[c/4]-2c+[26(m+1)/10]+d-1=49+[49/4]+[20/4]-2×20+[26×(10+1)/10]+1-1=49+[12.25]+5-40+[28.6]=49+12+5-40+28=54 (除以7余5)即2049年10月1日(100周年国庆)是星期五。

公历农历转换方法

公历农历转换方法

公历农历转换方法公历和农历是不同地区和文化中所采用的两种历法。

公历是以太阳历为基础,以地球绕太阳一周的时间为计量单位。

而农历则是以月相为基础,采用太阳和月球的运行周期来计算时间。

1.确定公历日期和年份。

首先,需要知道要进行转换的公历日期和年份。

公历日期包括月份、日期和年份。

2.确定公历年份是否为闰年。

公历闰年是指在二月份增加一天的年份。

闰年规则是,能被4整除但不能被100整除的年份是闰年,但能被400整除的年份也是闰年。

3.确定公历日期在一年中的天数。

需要计算从当年的一月一日到所给定日期的天数。

例如,5月1日在一年中的第121天。

4.确定农历年份。

农历年份按照十二属相的循环进行命名,例如鼠年、牛年等。

农历年份通常比公历年份小,所以需要找到所给定日期对应的农历年份。

5.确定农历闰月。

农历年份中的一些月份可能是闰月,即在正常的十二个月之外增加的一个月。

农历闰月的规则比较复杂,通常需要使用农历年历表格或专门的工具进行查询。

6.确定农历月份和日期。

一旦确定了农历年份和闰月,就可以根据公历日期和天数计算出农历日期。

需要根据农历每个月的天数和闰月的位置进行计算,这也可以通过参考农历年历表格来进行查询。

7.规范化农历日期。

农历日期通常以干支纪年的形式表达,需要将计算出的农历日期转换为常见的农历日期格式。

例如,将鼠年转换为1月1日。

这是一种简单的公历农历转换方法,但对于一些复杂的日期,如涉及到闰月的情况,可能需要更高级的技巧和工具来进行精确的转换。

现在,让我们来看一些农历的特点和一些常用的公历农历转换工具。

农历是以月相为基础,一般由十二个或十三个月组成,每个月以朔望月(农历月初)为起点,到下一个朔望月为止。

由于地球绕太阳公转的周期和月球绕地球运行的周期不完全吻合,导致农历年份的长度不固定,平均约为354-355天,比公历年份的365天要短。

在中国,农历仍然广泛用于农民和传统节日的日期计算。

另外,一些东亚国家和社区(如日本、韩国和越南等)也保留了农历作为重要的时间参考。

农历计算

农历计算

农历的计算方法阳历日期推算阴历日期的方法:阴历日期是以月亮的圆缺为计月单位,其以逢朔为初一,以月望为十五(大月为十六日),以月晦为二十九日(大月为三十日)。

然而目前记时通常用阳历日期表达,如欲将阳历日期换算成阴历日期可以用以下两种方法:其一是查《新编万年历》,如查1984年6月8日是阴历几日?翻开万年历6月10日是阴历十一,则逆推6月8日是阴历初九。

其二可以利用公式推算阴历日期:设:公元年数-1977(或1901)=4Q+R则:阴历日期=14Q+10.6(R+1)+年内日期序数-29.5n(注:式中Q、R、n均为自然数,R<4)例:1994年5月7日的阴历日期为:1994-1977=17=4×4+1故:Q=4,R=1则:5月7日的阴历日期为:14×4+10.6(1+1)+(31+28+31+31+7)-29.5n=204.2- 29.5n然后用29.5去除204.2得商数6......27.2,6即是n值,余数27即是阴历二十七日。

一、推算年干支口诀掌上推算年干支,支子花甲起根源。

阳支都是旬开始,天干为甲尾四年。

隔位逆推十年正,顺推年尾五零三。

逐支加减六十数,掌上推算千万年。

推算方法:“掌上推算年干支,支子花甲起根源。

”此法是将地支排列在掌中,手掌上推算年干支的方法。

首先,在掌上将地支定位(图一),然后以地支子位为花甲子的开始,可定为1864,1924,也可定为1984年???,其年都是甲子年。

“阳支都是旬开始,天干为甲尾四年。

”地支中的子,寅,辰,午,申,戌都是阳支,而且也是每旬的开始,天干都为甲,即甲子,甲戌,甲申,甲午,甲辰,甲寅,这些年的公历尾数均为四。

“隔位逆推十年正,顺推年尾五零三。

”天干十数,地支十二数,天干与地支组合天干每循环一次,地支总与下二支(旬空)。

其中余下的第一支便是下旬的开始。

我们从地支子位开始,隔一位逆推,即从子位逆推隔亥到戌,恰是甲戌旬的开始,再逆推隔一位酉至申为甲申旬开始,------年尾数都为四,年间隔都是十年。

公历转农历

公历转农历

公历转农历农历,又称阴历,是中国传统文化中使用的一种历法,它的特点是以月为单位,每月的天数不固定,且与公历不同,因此需要进行转换才能确定某一天是农历的哪一天。

农历的起源可以追溯到中国古代,其中最早被发现的农历纪年方法是按照地月十日记录,这种方法可以追溯到公元前2300年左右。

后来,中国古代的天文学家通过对月亮运行轨迹的观测和研究,将农历分为29或30天的十二个月,并规定农历每年的1月1日为新年。

农历的纪年方法与公历不同,农历没有像公历一样的固定的年月日,因此需要使用特定的算法来转换。

公历转农历的方法包括两种:一种是通过查找对应的农历日历表,找到对应的农历日期;另一种是通过计算来求出农历日期。

查找农历日历表的方法是最简单的,但是这种方法并不能满足所有的需求,因为农历日历表通常只能查询到2022年的农历日期。

如果要查询超过2022年的农历日期,就需要使用计算的方法。

计算农历日期的方法是根据农历的规律来计算,主要有以下几个步骤:1.首先计算公历某一天是公元元年的第几天,这个数值称为公历天数。

公元元年1月1日是公历的第一天,每经过一天,公历天数加1。

2.接下来,根据农历的规律,计算公历天数对应的农历年份。

农历每年的1月1日都是春节,因此可以通过计算春节的公历日期来确定农历年份。

3.计算农历月份。

农历每月的天数不固定,需要根据农历年份的特点来确定。

4.最后,计算农历日。

根据剩余的公历天数,即可得到农历日。

公历转农历是一个复杂的过程,需要综合考虑许多因素,因此有时候可能需要使用专业的软件来帮助计算。

不过,对于一般的日常使用,可以使用网上的在线工具或者手机应用程序来转换农历日期。

总的来说,公历转农历是一个复杂的过程,但是对于许多中国人来说,农历又是非常重要的一种历法,因此了解如何转换农历日期是很有必要的。

需要注意的是,农历与公历的转换并不是一成不变的,原因是农历是阳历的一个逼近,所以农历与阳历之间存在一定的时差。

根据公历日期计算农历年生肖及公历转换农历的方法

根据公历日期计算农历年生肖及公历转换农历的方法

日期农历月份[$-130000]格式验证1[$-130000]格式验证2TEXT(A2,"[$-130000]m-d")=1898+MATCH(要转换的公历日期,{0;31;416;770;1125;1508;1862;2217;2601;2955;3310;3694;4048;4432;4786;5140;5524;5878;6233;6617;6972;7356;7710;8064;8448;8802;9156;9541;9895;10250;10634;10988;11371;11725;12080;12464;12819;13173;13557;13911;14295;14649;15003;15387;15742;16096;16481;16835;17189;17573;17927;18311;18665;19020;19404;19758;20113;20497;20851;21234;21589;21943;22327;22682;23036;23420;23775;24128;21900-1-31鼠年春节1899FALSE13-16根据阳历生日1901-2-19牛年春节1901TRUE1-161902-2-8虎年春节1902TRUE1-171903-1-29兔年春节1902FALSE13-181904-2-16龙年春节1904TRUE1-171905-2-4蛇年春节1904FALSE13-171906-1-25马年春节1905FALSE12-161907-2-13羊年春节1907TRUE1-171908-2-2猴年春节1907FALSE13-161909-1-22鸡年春节1908FALSE12-171910-2-10狗年春节1910TRUE1-181911-1-30猪年春节1910FALSE13-181912-2-18鼠年春节1912TRUE1-181914-1-26虎年春节1913FALSE13-16 1915-2-14兔年春节1915TRUE1-17 1916-2-3龙年春节1915FALSE13-16 1917-1-23蛇年春节1916FALSE12-17 1918-2-11马年春节1918TRUE1-17 1919-2-1羊年春节1918FALSE13-18 1920-2-20猴年春节1920TRUE1-18 1921-2-8鸡年春节1921TRUE1-17 1922-1-28狗年春节1921FALSE13-16 1923-2-16猪年春节1923TRUE1-17 1924-2-5鼠年春节1923FALSE13-17 1925-1-24牛年春节1924FALSE12-16 1926-2-13虎年春节1926TRUE1-17 1927-2-2兔年春节1926FALSE13-17 1928-1-23龙年春节1927FALSE12-18 1929-2-10蛇年春节1929TRUE1-17 1930-1-30马年春节1929FALSE13-17 1931-2-17羊年春节1931TRUE1-17 1932-2-6猴年春节1932TRUE1-16 1933-1-26鸡年春节1932FALSE13-17 1934-2-14狗年春节1934TRUE1-17 1935-2-4猪年春节1934FALSE13-17 1936-1-24鼠年春节1935FALSE12-17 1937-2-11牛年春节1937TRUE1-16 1938-1-31虎年春节1937FALSE13-16 1939-2-19兔年春节1939TRUE1-17 1940-2-8龙年春节1940TRUE1-17 1941-1-27蛇年春节1940FALSE13-16 1942-2-15马年春节1942TRUE1-16 1943-2-5羊年春节1942FALSE13-17 1944-1-25猴年春节1943FALSE12-16 1945-2-13鸡年春节1945TRUE1-17 1946-2-2狗年春节1945FALSE13-17 1947-1-22猪年春节1946FALSE12-18 1948-2-10鼠年春节1948TRUE1-18 1949-1-29牛年春节1948FALSE13-17 1950-2-17虎年春节1950TRUE1-17 1951-2-6兔年春节1951TRUE1-16 1952-1-27龙年春节1951FALSE13-17 1953-2-14蛇年春节1953TRUE1-16 1954-2-3马年春节1953FALSE13-16 1955-1-24羊年春节1954FALSE12-18 1956-2-12猴年春节1956TRUE1-18 1957-1-31鸡年春节1956FALSE13-18 1958-2-18狗年春节1958TRUE1-17 1959-2-8猪年春节1959TRUE1-17 1960-1-28鼠年春节1960TRUE1-1 1961-2-15牛年春节1961TRUE1-1 1962-2-5虎年春节1962TRUE1-1 1963-1-25兔年春节1963TRUE1-1 1964-2-13龙年春节1964TRUE1-11966-1-21马年春节1965FALSE12-30 1967-2-9羊年春节1967TRUE1-1 1968-1-30猴年春节1968TRUE1-1 1969-2-17鸡年春节1969TRUE1-1 1970-2-6狗年春节1970TRUE1-1 1971-1-27猪年春节1971TRUE1-1 1972-2-15鼠年春节1972TRUE1-1 1973-2-3牛年春节1973TRUE1-1 1974-1-23虎年春节1974TRUE1-1 1975-2-11兔年春节1975TRUE1-1 1976-1-31龙年春节1976TRUE1-1 1977-2-18蛇年春节1977TRUE1-1 1978-2-7马年春节1978TRUE1-1 1979-1-28羊年春节1979TRUE1-1 1980-2-16猴年春节1980TRUE1-1 1981-2-5鸡年春节1981TRUE1-1 1982-1-25狗年春节1982TRUE1-1 1983-2-13猪年春节1983TRUE1-1 1984-2-2鼠年春节1984TRUE1-1 1985-2-20牛年春节1985TRUE1-1 1986-2-9虎年春节1986TRUE1-1 1987-1-29兔年春节1987TRUE1-1 1988-2-17龙年春节1987FALSE13-30 1989-2-6蛇年春节1989TRUE1-1 1990-1-27马年春节1990TRUE1-1 1991-2-15羊年春节1991TRUE1-1 1992-2-4猴年春节1992TRUE1-1 1993-1-23鸡年春节1993TRUE1-1 1994-2-10狗年春节1994TRUE1-1 1995-1-31猪年春节1995TRUE1-1 1996-2-19鼠年春节1996TRUE1-1 1997-2-7牛年春节1996FALSE12-30 1998-1-28虎年春节1998TRUE1-1 1999-2-16兔年春节1999TRUE1-1 2000-2-5龙年春节2000TRUE1-1 2001-1-24蛇年春节2001TRUE1-1 2002-2-12马年春节2002TRUE1-1 2003-2-1羊年春节2003TRUE1-1 2004-1-22猴年春节2004TRUE1-1 2005-2-9鸡年春节2005TRUE1-1 2006-1-29狗年春节2006TRUE1-1 2007-2-18猪年春节2007TRUE1-1 2008-2-7鼠年春节2008TRUE1-1 2009-1-26牛年春节2009TRUE1-1 2010-2-14虎年春节2010TRUE1-1 2011-2-3兔年春节2011TRUE1-1 2012-1-23龙年春节2012TRUE1-1 2013-2-10蛇年春节2013TRUE1-1 2014-1-31马年春节2014TRUE1-1 2015-2-19羊年春节2015TRUE1-1 2016-2-8猴年春节2016TRUE1-12018-2-16狗年春节2018TRUE1-1 2019-2-5猪年春节2019TRUE1-1 2020-1-25鼠年春节2020TRUE1-1 2021-2-12牛年春节2021TRUE1-1 2022-2-1虎年春节2022TRUE1-1 2023-1-22兔年春节2023TRUE1-1 2024-2-10龙年春节2024TRUE1-1 2025-1-29蛇年春节2025TRUE1-1 2026-2-17马年春节2026TRUE1-1 2027-2-6羊年春节2026FALSE12-30 2028-1-26猴年春节2027FALSE12-30 2029-2-13鸡年春节2029TRUE1-1 2030-2-3狗年春节2030TRUE1-1 2031-1-23猪年春节2031TRUE1-1 2032-2-11鼠年春节2032TRUE1-1 2033-1-31牛年春节2033TRUE1-1 2034-2-19虎年春节2034TRUE1-1 2035-2-8兔年春节2035TRUE1-1 2036-1-28龙年春节2036TRUE1-1 2037-2-15蛇年春节2037TRUE1-1 2038-2-4马年春节2038TRUE1-1 2039-1-24羊年春节2039TRUE1-1 2040-2-12猴年春节2040TRUE1-1 2041-2-1鸡年春节2041TRUE1-1 2042-1-22狗年春节2042TRUE1-1 2043-2-10猪年春节2043TRUE1-1 2044-1-30鼠年春节2044TRUE1-1 2045-2-17牛年春节2045TRUE1-1 2046-2-6虎年春节2046TRUE1-1 2047-1-26兔年春节2047TRUE1-1 2048-2-14龙年春节2048TRUE1-1 2049-2-2蛇年春节2049TRUE1-1 2050-1-23马年春节2050TRUE1-1 2051-2-11羊年春节2051TRUE1-15 2052-2-1猴年春节2051FALSE13-15 2053-2-19鸡年春节2053TRUE1-15 2054-2-8狗年春节2054TRUE1-15 2055-1-28猪年春节2054FALSE13-14 2056-2-15鼠年春节2056TRUE1-14 2057-2-4牛年春节2057TRUE1-14 2058-1-24虎年春节2057FALSE13-14 2059-2-12兔年春节2059TRUE1-14 2060-2-2龙年春节2059FALSE13-15 2061-1-21蛇年春节2060FALSE12-15 2062-2-9马年春节2062TRUE1-14 2063-1-29羊年春节2062FALSE13-14 2064-2-17猴年春节2064TRUE1-15 2065-2-5鸡年春节2065TRUE1-14 2066-1-26狗年春节2065FALSE13-15 2067-2-14猪年春节2067TRUE1-15 2068-2-3鼠年春节2067FALSE13-152070-2-11虎年春节2070TRUE1-15 2071-1-31兔年春节2070FALSE13-14 2072-2-19龙年春节2072TRUE1-15 2073-2-7蛇年春节2073TRUE1-14 2074-1-27马年春节2073FALSE13-14 2075-2-15羊年春节2075TRUE1-14 2076-2-5猴年春节2075FALSE13-15 2077-1-24鸡年春节2076FALSE12-16 2078-2-12狗年春节2078TRUE1-15 2079-2-2猪年春节2078FALSE13-15 2080-1-22鼠年春节2079FALSE12-14 2081-2-9牛年春节2081TRUE1-14 2082-1-29虎年春节2081FALSE13-14 2083-2-17兔年春节2083TRUE1-14 2084-2-6龙年春节2084TRUE1-15 2085-1-26蛇年春节2084FALSE13-16 2086-2-14马年春节2086TRUE1-15 2087-2-3羊年春节2086FALSE13-15 2088-1-24猴年春节2087FALSE12-15 2089-2-10鸡年春节2089TRUE1-14 2090-1-30狗年春节2089FALSE13-13 2091-2-18猪年春节2091TRUE1-14 2092-2-7鼠年春节2092TRUE1-15 2093-1-27牛年春节2092FALSE13-16 2094-2-15虎年春节2094TRUE1-15 2095-2-5兔年春节2095TRUE1-15 2096-1-25龙年春节2095FALSE13-15 2097-2-12蛇年春节2097TRUE1-15 2098-2-1马年春节2097FALSE13-14 2099-1-21羊年春节2098FALSE12-14 2100-2-9猴年春节2100TRUE1-15农历日期顺序初一初二初三初四初五初六初七初八初九初十十一十二十三十五十六十七十八十九二十廿一廿二廿三廿四廿五廿六廿七廿八廿九三十。

公历换算农历方法

公历换算农历方法

公历换算农历方法
公历与农历是两种不同的历法,公历以太阳年作为基准,而农历则以月亮周期为依据。

换算公历和农历的方法相对简单,可以按照以下步骤进行:
1. 首先,确定需要换算的年份和月份。

2. 求出该年年初到当月之间的天数总和。

例如,假设需要换算的是2022年2月,那么该年年初到2月底有几天呢?可以通
过查看公历的日历或者使用计算工具来得到答案。

3. 计算出农历年份的年份,这一步需要根据农历年历表进行查询。

农历年份有一个十二年一个周期的循环,每个周期中的年份对应着十二生肖。

例如,2022年是中国农历中的“壬寅年”。

4. 利用农历年份的信息,可以根据农历年历表查找当年的正月初一对应的公历日期。

以正月初一为基准,加上经过的天数,就可以得到换算后的公历日期。

例如,假设2022年农历正月
初一对应的公历日期是2月1日,再加上2月份的天数,就可
以得到农历2月的公历换算结果。

需要注意的是,农历每个月的长度是不固定的,有的月份为
29天,有的月份为30天。

因此,在换算时要特别留意每个月
的天数差异。

此外,还需要注意润月的情况,有时候会出现闰月,润月会导致农历多出一个月,所以在换算时要特别注意闰月的情况。

公历转换农历及节气算法

公历转换农历及节气算法

公历转换农历公历与农历是我国目前并存的两种历法,各有其固有的规律,农历与月球的运行相对应,其影响因素多,它的大小月和闰月与天体运行有关,计算十分复杂,且每年都不一致,因此要用单片机实现公历与农历的转换用查表法是最方便实用的办法。

计算公历日对应的农历日期的方法是先计算出公历日离当年元旦的天数,然后查表取得当年的春节日期,计算出春节离元旦的天数,二者相减即可算出公历日离春节的天数,以后只要根据大小月和闰月信息减一月天数,调整一月农历月份,即可推算出公历日所对应的农历日期,如公历日不到春节日期,农历年要比公历年小一年,农历大小月取前一年的信息,农历月从12 月向前推算。

本文介绍的公历转换农历C语言程序实现从1901 年到2099 年199 年的公历日到农历转换,如果到2099年后则要添加农历表,但我相信199年对我们现代人已经足够了。

在功能函数入口输入BCD公历数据函数出口直接输出BCD农历数据。

农历显示按照人为习惯都是用大写显示,比如:“1号”应该显示为’初一“;“21”应该显示为“廿一”;“12月”应该显示为“腊月”等。

二十四节气和生肖二十四节气是我国劳动人民创造的辉煌文化,它能反映季节的变化,指导农事活动,影响着千家万户的衣食住行。

有人认为二十四节气从属农历,其实,它是根据阳历划定的。

即根据太阳在黄道上的位置,把一年划分为24个彼此相等的段落。

也就是把黄道分成24个等份,每等份各占黄经15°。

由于太阳通过每等份所需的时间几乎相等,二十四节气的公历日期每年大致相同:上半年在6日、21日前后,下半年在8日、23日前后。

二十四节气没有固定规律,也需要存表。

如1901年的节气为:1月2月3月4月5月6月 7月 8月 9月 10月 11月 12月[ 6,21][ 4,19][ 6,21][ 5,21][ 6,22][ 6,22][ 8,23][ 8,24][ 8,24][ 8,24][ 8,23][ 8,22][ 9, 6][11, 4][ 9, 6][10, 6][ 9, 7][ 9, 7][ 7, 8][ 7, 9][ 7, 9][ 7, 9][ 7, 8][ 7,15]上面第一行数据为每月节气对应公历日期,15减去每月第一个节气,每月第二个节气减去15得第二行,这样每月两个节气对应数据都小于16,每月用一个字节存放,高位存放第一个节气数据,低位存放第二个节气的数据,根据以上规律便可编写出节气表,最后通过表计算出每月节气。

阳历转阴历查询

阳历转阴历查询

阳历转阴历查询阳历转阴历是指根据阳历日期,推算出对应的阴历日期。

在中国传统文化中,阴历日期比阳历日期更为重要,因为它和许多重要的传统节日及农事活动有关。

虽然现代日历已经普遍使用阳历,但许多人仍然对阴历日期感兴趣,因为它代表了中华民族传统的时间观念和生活习俗。

所以,阳历转阴历查询这一功能在现代社会仍然非常有用。

阳历转阴历查询的具体方法有很多种,现代技术的发展使得这样的查询变得更加便捷。

常见的方法有使用手机应用、互联网网站或者直接咨询专业人士。

这些方法都能够帮助我们快速准确地查询到对应的阴历日期。

手机应用是现代人生活中不可或缺的一部分。

无论是IOS还是Android系统,都有许多阳历转阴历查询的应用程序可以下载和使用。

用户只需要打开应用,选择对应的阳历日期,点击查询按钮,即可得到对应的阴历日期。

这些应用通常还会提供详细的阴历信息,包括农历年、农历月、农历日、农历节气等等。

用户也可以根据自己的需求,设置提醒功能,以便在重要的阴历日期前得到提醒。

互联网网站也是查询阳历转阴历的常用方法之一。

打开电脑,输入关键词“阳历转阴历查询”即可找到许多相关的网站。

用户只需选择一家可信赖的网站,输入阳历日期,点击查询,即可得到对应的阴历日期。

一些网站还提供了其他相关功能,比如查询农历年历、八字算命等等。

用户可以根据自己的需要选择合适的功能。

除了手机应用和互联网网站,用户还可以直接咨询专业人士进行阳历转阴历查询。

专业人士包括历史学家、文化学者、天文学家等等。

他们通常具有丰富的知识和经验,能够为用户提供准确的阴历信息。

用户可以通过邮件、电话或者面对面的方式与专业人士进行沟通,得到所需的阴历日期。

阳历转阴历查询在现代社会具有很大的实用价值。

对于一些传统节日的庆祝和农事活动的安排来说,阴历日期非常重要。

此外,很多人也希望了解自己的农历生日。

所以,无论是通过手机应用、互联网网站还是咨询专业人士,我们都可以方便快捷地查询到阳历对应的阴历日期。

阴历阳历转换算法

阴历阳历转换算法

阴历阳历转换算法一、阳历转农历算法阳历转农历的算法可以分为两种:数学计算法和查表法。

1.数学计算法阳历转农历的数学计算法基于一些数学公式和推算规则。

其中,公历年份、月份和日期的确定使用了基于蔡勒公式、游戏二法和公式等方式。

核心计算公式:(1)蔡勒公式:W=(C/4-2*C+y+y/4+13*(m+1)/5+d-1)%7其中,W为一周中的日期,C为世纪数,y为年份的后两位数,m为月份(1代表3月,2代表4月,依此类推),d为公历日期。

其中,jdy为公历日期的数值。

M=[N/1461]D = N mod 1461K=[D/365](4)数学计算方法计算公历日期对应的年份、月份和日期。

2.查表法阳历转农历的查表法使用一个双向映射表,将公历日期和农历日期进行映射。

这样,当需要进行阳历转农历时,只需要在该表中查找对应的日期。

该表通常包括每个公历年份的月份和日期,以及相应的农历月份和日期。

二、农历转阳历算法农历转阳历的算法也可以使用数学计算法和查表法。

1.数学计算法农历转阳历的数学计算法基于一定的规则和公式。

其中,农历年份、月份和日期的确定使用了一些数学公式。

核心计算公式:(1)计算春节对应的公历日期:N=y*365+[y/4]-[y/100]+[y/400]+[30.6*(m+0.5)]+d-1899.5其中,N为公历日期的数值。

(2)根据公历日期的数值,计算农历日期的年份、月份和日期。

2.查表法农历转阳历的查表法使用一个双向映射表,将农历日期和公历日期进行映射。

这样,当需要进行农历转阳历时,只需要在该表中查找对应的日期。

该表通常包括每个农历年份的月份和日期,以及相应的公历月份和日期。

三、应用阳历转农历和农历转阳历算法广泛应用于日历、生活工具、节日计算等方面。

在计算机程序和手机应用中,这些算法可以用来进行日期转换、节日提醒等功能。

此外,还有一些相对复杂的算法可以使用天文计算和历法知识,考虑到地球的自转、公转、地球轨道等因素来进行日期转换,提高转换的准确性。

公历到农历的计算公式

公历到农历的计算公式

公历到农历的计算公式公历和农历是两种不同的历法系统,公历以太阳年为基准,农历以月亮为基准。

在日常生活中,我们常常需要将公历日期转换为农历日期,计算公式可以帮助我们实现这一转换。

公历到农历的计算公式基于以下几个要素:年份、月份和日期。

下面我们将分别介绍如何计算这些要素。

1. 计算农历年份:农历年份的计算是通过与公历年份的差值来确定的。

农历年份与公历年份的对应关系是不固定的,需要参考农历表来确定。

一般来说,公历年份小于1900年时,农历年份与公历年份相差1年;公历年份大于1900年时,农历年份与公历年份相差2年。

2. 计算农历月份:农历月份的计算与农历年份相关。

农历每年有12个或13个月,每个月的天数也不固定。

一般来说,农历年份的第一个月是农历正月,公历1月和2月对应农历正月,以此类推。

但是,如果农历年份有闰月,则闰月的计算需要参考农历表。

闰月是为了保持农历与实际月相的一致性而插入的一个月份。

3. 计算农历日期:农历日期的计算涉及到每个月的天数。

农历每个月的天数不固定,一般为29或30天。

农历日期的计算需要参考农历表,确定每个月的天数。

例如,农历正月的天数是根据农历年份的不同而不同的。

通过以上三个要素的计算,我们就可以将公历日期转换为农历日期了。

下面我们通过一个例子来说明具体的计算过程。

假设我们要将公历2022年5月20日转换为农历日期。

计算农历年份。

根据上面的规则,2022年的农历年份与公历年份相差2年,因此农历年份是2024年。

接下来,计算农历月份。

根据农历表,2024年的闰月是4月,因此5月对应的农历月份是闰三月。

计算农历日期。

根据农历表,闰三月的天数是29天,因此5月20日对应的农历日期是闰三月二十日。

公历2022年5月20日对应的农历日期是2024年闰三月二十日。

通过这样的计算公式,我们可以方便地将公历日期转换为农历日期。

这对于一些需要参考农历的节日、纪念日等场合非常有用。

同时,也可以帮助我们更好地了解农历文化和传统。

流年赶月法------阳历农历的互换法

流年赶月法------阳历农历的互换法

流年赶月法------阳历农历的互换法排四柱法(阳历)诗曰:年月日时四干支,难倒天下有志士;万年历书不离手,用时翻书即刻知;历书虽好有点重,用时无书真叫急;今日学得推算法,从此不用万年历。

我将我平时用的方法写出来,大家可能早都会了,会的,看着玩儿,不会的,学一学,我觉得挺好用的:一、排年柱:阿拉伯数字有10个,而天干也有10个,我们就正好可以把公元年的最后一位数字和十个天干对应起来。

一对应,我们发现,4正好对应的是甲。

只要记住甲对应4,那么其它的就可以数着指头算出来了(甲4乙5丙6丁7戊8己9庚0辛1壬2癸3),这是年干。

年支大家根本就不用记,因为每个中国人都知道自己属什么的,也知道今年是什么年,一问就知道了。

举例:比如我吧,我是77年生的,所以是丁;我属蛇的,所以是巳,所以是丁巳年。

再如今年,今年龙马精神,马年吉祥,是马年,又是02年,所以是壬午。

二、排日柱:基础知识:1,一年有十二个月。

2,一三五七八十腊,每逢此月便是大。

3,大月31天,平年2月28天,闰年2月29天,其它月30天。

方法:每年,我们要记住元旦这天的干支。

比如今年元旦是己巳(如果实在记不住,可记“黄蛇”。

甲子为“青鼠”,乙丑为“青牛”等)首先,我们假设每月有30天。

那么,一个月就是半个甲子,两个月就是一个甲子。

那么,3,5,7,9,11月的干支就相同,而且和元旦的干支相同(因为是隔了N个甲子嘛);2,4,6,8,10,12月的干支也相同,而且和元旦(1月1号)干支的关系是干同支冲(因为隔N又1/2个甲子嘛)。

然后,我们就把多于30的天数加上,少于30的天数减去。

这样,就知道了每个月1号的干支。

举例:比如元旦是甲子日,那么10月1号是什么?首先假设是甲午日。

然后,10月以前过去了1,3,5,7,8五个大月,每月多一天,多五天,2月28天,少两天,那么其实就是多了三天。

将甲午往后三位,10月1号就是丁酉日。

再如今年元旦是己巳日,那么今年五一节是什么?先假设5月1日也是己巳日,过去的大月有1,3两个,多两天,2月少了两天,正好抵消,那么,今年五一节就是己巳日。

公历换算农历公式

公历换算农历公式

公历换算农历公式
公历换算农历公式
想要将公历转换为农历,可以根据公式:公元年数—1901(或1977)=R+4Q;那么农历日期=10.6(1+R)+14Q+年内日期序数—29.5n(n、R、Q都是自然数,R<4)。

这个公式算法对于很多数学不好的人而言是很费脑子的,算大半天也算不出来,而当今科技是比较发达的,我们想要将进行公农历转换并不需要这么复杂的计算。

现在,想要将公农历进行转换方法很简单,比较传统的一个方法就是可以直接看挂历或是台历,上面每个公历日期的下面都会标注都相对应的农历日期,我们只需一翻阅就能查询到公历相对应的农历日期了。

比如我们要看2021年7月2日的农历日期,7月2日的下面就会显示农历日期为五月廿三。

对于公农历转换公式是什么,我们已经了解了,但是它的是比较复杂的,而现在是网络普及的一个时代,平板、手机以及电脑等等电子产品也都设置有万年历这中功能,所以对于公历与农历的转换,一查看就可以了,很方便。

并且与传统的挂历、台历本子而言,电子设备上的日期不局限于一年的日期,这给人们的生活、学习以及日常工作等更方便。

好了,公历是国际通过的历法,当年日期的记录均是以阳历为准,但农历是我国传统的一种日期记录方式,在实际上生活中难免会用到公农历转换。

我们知道公农历转换公式是什么,但是算法复杂,我们大可不必去计算,看挂历即可。

阳历和阴历转换算法

阳历和阴历转换算法

阳历和阴历转换算法
一、阳历和阴历的区别
阳历是以太阳行星运行轨道周期来计算的历法,也称为公历,它将一年分为12个月,每月大约29天左右。

阴历是按照农历的月份来排列的,一年有12个月,每月大约有29或30天。

二、历法计算原理
(1)阳历
阳历是按照太阳行星的运行周期计算的,一年的太阳行星运行周期为365.2422天,因此,每隔四年多少天就添加一天,称为闰年,这样一年可以分成365或366天。

(2)阴历
三、阳历和阴历之间的转换
1、阳历转换成阴历
1)计算年份
首先,我们要知道要转换的年份是否是闰年,是则记闰月为29天,不是则记闰月为28天。

2)计算月份
根据今年的起始月份,以及今年之前的年份闰月天数,可以计算出今年的闰月日期,根据要转换的年份和月份,可以确定当前的月份,从而转换成阴历的月份。

3)计算日期
根据转换后阴历的月份和日期,结合当月的起始日期,可以计算出当月的日期,即为转换后的阴历日期。

4)计算多余的天数
转换成阴历之后,如果有多余的天数。

根据公历日期计算农历年生肖及公历转换农历的方法

根据公历日期计算农历年生肖及公历转换农历的方法

日期农历月份[$-130000]格式验证1[$-130000]格式验证2TEXT(A2,"[$-130000]m-d")=1898+MATCH(要转换的公历日期,{0;31;416;770;1125;1508;1862;2217;2601;2955;3310;3694;4048;4432;4786;5140;5524;5878;6233;6617;6972;7356;7710;8064;8448;8802;9156;9541;9895;10250;10634;10988;11371;11725;12080;12464;12819;13173;13557;13911;14295;14649;15003;15387;15742;16096;16481;16835;17189;17573;17927;18311;18665;19020;19404;19758;20113;20497;20851;21234;21589;21943;22327;22682;23036;23420;23775;24128;21900-1-31鼠年春节1899FALSE13-16根据阳历生日1901-2-19牛年春节1901TRUE1-161902-2-8虎年春节1902TRUE1-171903-1-29兔年春节1902FALSE13-181904-2-16龙年春节1904TRUE1-171905-2-4蛇年春节1904FALSE13-171906-1-25马年春节1905FALSE12-161907-2-13羊年春节1907TRUE1-171908-2-2猴年春节1907FALSE13-161909-1-22鸡年春节1908FALSE12-171910-2-10狗年春节1910TRUE1-181911-1-30猪年春节1910FALSE13-181912-2-18鼠年春节1912TRUE1-181914-1-26虎年春节1913FALSE13-16 1915-2-14兔年春节1915TRUE1-17 1916-2-3龙年春节1915FALSE13-16 1917-1-23蛇年春节1916FALSE12-17 1918-2-11马年春节1918TRUE1-17 1919-2-1羊年春节1918FALSE13-18 1920-2-20猴年春节1920TRUE1-18 1921-2-8鸡年春节1921TRUE1-17 1922-1-28狗年春节1921FALSE13-16 1923-2-16猪年春节1923TRUE1-17 1924-2-5鼠年春节1923FALSE13-17 1925-1-24牛年春节1924FALSE12-16 1926-2-13虎年春节1926TRUE1-17 1927-2-2兔年春节1926FALSE13-17 1928-1-23龙年春节1927FALSE12-18 1929-2-10蛇年春节1929TRUE1-17 1930-1-30马年春节1929FALSE13-17 1931-2-17羊年春节1931TRUE1-17 1932-2-6猴年春节1932TRUE1-16 1933-1-26鸡年春节1932FALSE13-17 1934-2-14狗年春节1934TRUE1-17 1935-2-4猪年春节1934FALSE13-17 1936-1-24鼠年春节1935FALSE12-17 1937-2-11牛年春节1937TRUE1-16 1938-1-31虎年春节1937FALSE13-16 1939-2-19兔年春节1939TRUE1-17 1940-2-8龙年春节1940TRUE1-17 1941-1-27蛇年春节1940FALSE13-16 1942-2-15马年春节1942TRUE1-16 1943-2-5羊年春节1942FALSE13-17 1944-1-25猴年春节1943FALSE12-16 1945-2-13鸡年春节1945TRUE1-17 1946-2-2狗年春节1945FALSE13-17 1947-1-22猪年春节1946FALSE12-18 1948-2-10鼠年春节1948TRUE1-18 1949-1-29牛年春节1948FALSE13-17 1950-2-17虎年春节1950TRUE1-17 1951-2-6兔年春节1951TRUE1-16 1952-1-27龙年春节1951FALSE13-17 1953-2-14蛇年春节1953TRUE1-16 1954-2-3马年春节1953FALSE13-16 1955-1-24羊年春节1954FALSE12-18 1956-2-12猴年春节1956TRUE1-18 1957-1-31鸡年春节1956FALSE13-18 1958-2-18狗年春节1958TRUE1-17 1959-2-8猪年春节1959TRUE1-17 1960-1-28鼠年春节1960TRUE1-1 1961-2-15牛年春节1961TRUE1-1 1962-2-5虎年春节1962TRUE1-1 1963-1-25兔年春节1963TRUE1-1 1964-2-13龙年春节1964TRUE1-11966-1-21马年春节1965FALSE12-30 1967-2-9羊年春节1967TRUE1-1 1968-1-30猴年春节1968TRUE1-1 1969-2-17鸡年春节1969TRUE1-1 1970-2-6狗年春节1970TRUE1-1 1971-1-27猪年春节1971TRUE1-1 1972-2-15鼠年春节1972TRUE1-1 1973-2-3牛年春节1973TRUE1-1 1974-1-23虎年春节1974TRUE1-1 1975-2-11兔年春节1975TRUE1-1 1976-1-31龙年春节1976TRUE1-1 1977-2-18蛇年春节1977TRUE1-1 1978-2-7马年春节1978TRUE1-1 1979-1-28羊年春节1979TRUE1-1 1980-2-16猴年春节1980TRUE1-1 1981-2-5鸡年春节1981TRUE1-1 1982-1-25狗年春节1982TRUE1-1 1983-2-13猪年春节1983TRUE1-1 1984-2-2鼠年春节1984TRUE1-1 1985-2-20牛年春节1985TRUE1-1 1986-2-9虎年春节1986TRUE1-1 1987-1-29兔年春节1987TRUE1-1 1988-2-17龙年春节1987FALSE13-30 1989-2-6蛇年春节1989TRUE1-1 1990-1-27马年春节1990TRUE1-1 1991-2-15羊年春节1991TRUE1-1 1992-2-4猴年春节1992TRUE1-1 1993-1-23鸡年春节1993TRUE1-1 1994-2-10狗年春节1994TRUE1-1 1995-1-31猪年春节1995TRUE1-1 1996-2-19鼠年春节1996TRUE1-1 1997-2-7牛年春节1996FALSE12-30 1998-1-28虎年春节1998TRUE1-1 1999-2-16兔年春节1999TRUE1-1 2000-2-5龙年春节2000TRUE1-1 2001-1-24蛇年春节2001TRUE1-1 2002-2-12马年春节2002TRUE1-1 2003-2-1羊年春节2003TRUE1-1 2004-1-22猴年春节2004TRUE1-1 2005-2-9鸡年春节2005TRUE1-1 2006-1-29狗年春节2006TRUE1-1 2007-2-18猪年春节2007TRUE1-1 2008-2-7鼠年春节2008TRUE1-1 2009-1-26牛年春节2009TRUE1-1 2010-2-14虎年春节2010TRUE1-1 2011-2-3兔年春节2011TRUE1-1 2012-1-23龙年春节2012TRUE1-1 2013-2-10蛇年春节2013TRUE1-1 2014-1-31马年春节2014TRUE1-1 2015-2-19羊年春节2015TRUE1-1 2016-2-8猴年春节2016TRUE1-12018-2-16狗年春节2018TRUE1-1 2019-2-5猪年春节2019TRUE1-1 2020-1-25鼠年春节2020TRUE1-1 2021-2-12牛年春节2021TRUE1-1 2022-2-1虎年春节2022TRUE1-1 2023-1-22兔年春节2023TRUE1-1 2024-2-10龙年春节2024TRUE1-1 2025-1-29蛇年春节2025TRUE1-1 2026-2-17马年春节2026TRUE1-1 2027-2-6羊年春节2026FALSE12-30 2028-1-26猴年春节2027FALSE12-30 2029-2-13鸡年春节2029TRUE1-1 2030-2-3狗年春节2030TRUE1-1 2031-1-23猪年春节2031TRUE1-1 2032-2-11鼠年春节2032TRUE1-1 2033-1-31牛年春节2033TRUE1-1 2034-2-19虎年春节2034TRUE1-1 2035-2-8兔年春节2035TRUE1-1 2036-1-28龙年春节2036TRUE1-1 2037-2-15蛇年春节2037TRUE1-1 2038-2-4马年春节2038TRUE1-1 2039-1-24羊年春节2039TRUE1-1 2040-2-12猴年春节2040TRUE1-1 2041-2-1鸡年春节2041TRUE1-1 2042-1-22狗年春节2042TRUE1-1 2043-2-10猪年春节2043TRUE1-1 2044-1-30鼠年春节2044TRUE1-1 2045-2-17牛年春节2045TRUE1-1 2046-2-6虎年春节2046TRUE1-1 2047-1-26兔年春节2047TRUE1-1 2048-2-14龙年春节2048TRUE1-1 2049-2-2蛇年春节2049TRUE1-1 2050-1-23马年春节2050TRUE1-1 2051-2-11羊年春节2051TRUE1-15 2052-2-1猴年春节2051FALSE13-15 2053-2-19鸡年春节2053TRUE1-15 2054-2-8狗年春节2054TRUE1-15 2055-1-28猪年春节2054FALSE13-14 2056-2-15鼠年春节2056TRUE1-14 2057-2-4牛年春节2057TRUE1-14 2058-1-24虎年春节2057FALSE13-14 2059-2-12兔年春节2059TRUE1-14 2060-2-2龙年春节2059FALSE13-15 2061-1-21蛇年春节2060FALSE12-15 2062-2-9马年春节2062TRUE1-14 2063-1-29羊年春节2062FALSE13-14 2064-2-17猴年春节2064TRUE1-15 2065-2-5鸡年春节2065TRUE1-14 2066-1-26狗年春节2065FALSE13-15 2067-2-14猪年春节2067TRUE1-15 2068-2-3鼠年春节2067FALSE13-152070-2-11虎年春节2070TRUE1-15 2071-1-31兔年春节2070FALSE13-14 2072-2-19龙年春节2072TRUE1-15 2073-2-7蛇年春节2073TRUE1-14 2074-1-27马年春节2073FALSE13-14 2075-2-15羊年春节2075TRUE1-14 2076-2-5猴年春节2075FALSE13-15 2077-1-24鸡年春节2076FALSE12-16 2078-2-12狗年春节2078TRUE1-15 2079-2-2猪年春节2078FALSE13-15 2080-1-22鼠年春节2079FALSE12-14 2081-2-9牛年春节2081TRUE1-14 2082-1-29虎年春节2081FALSE13-14 2083-2-17兔年春节2083TRUE1-14 2084-2-6龙年春节2084TRUE1-15 2085-1-26蛇年春节2084FALSE13-16 2086-2-14马年春节2086TRUE1-15 2087-2-3羊年春节2086FALSE13-15 2088-1-24猴年春节2087FALSE12-15 2089-2-10鸡年春节2089TRUE1-14 2090-1-30狗年春节2089FALSE13-13 2091-2-18猪年春节2091TRUE1-14 2092-2-7鼠年春节2092TRUE1-15 2093-1-27牛年春节2092FALSE13-16 2094-2-15虎年春节2094TRUE1-15 2095-2-5兔年春节2095TRUE1-15 2096-1-25龙年春节2095FALSE13-15 2097-2-12蛇年春节2097TRUE1-15 2098-2-1马年春节2097FALSE13-14 2099-1-21羊年春节2098FALSE12-14 2100-2-9猴年春节2100TRUE1-15农历日期顺序初一初二初三初四初五初六初七初八初九初十十一十二十三十五十六十七十八十九二十廿一廿二廿三廿四廿五廿六廿七廿八廿九三十。

一招教会你公历换算成农历,要不要试试看

一招教会你公历换算成农历,要不要试试看

一招教会你公历换算成农历,要不要试试看古代的历法是干支纪年,俗称农历或阴历,现在我们都统一采用公历的阿拉伯数字纪年。

因此,就存在着一个历法的换算问题。

当然,我们可以查历书就直接知道了,但是这个方法并不一定方便。

现在告诉大家一个简单的口诀,大家根据这个口诀,再进行简单的推算,就能很快地将公历的数字年,换算成阴历的干支年。

在干支纪年中,由于天干是十位,刚好是十进制,因此,每十年的相应位上,天干都是相同的,比如1980年、1970年、1960年的天干都是庚,而1981年、1971年、1961年的天干都是辛,以此类推,我们只要记住从1至10位的不同天干就行了,不必再做什么推算。

要推算的是地支,地支是十二位,不是十进制,比较麻烦。

但我们只要记住每个0位年的地支,还是可以方便的推算出每一年的地支。

我们现在暂从本世纪的1900年为始,1900年到现在已经86年了,我们所看到的病号大概都在这个范围以内,只有极少数的超过这个范围。

现在需要记忆一个0位年上的地支次第口诀,就是子戌申午辰寅。

1900年,它的地支是子,天干为庚,即庚子年,1910年,它的地支是戌,天干一样还是庚,即庚戌年,依次1920年为庚申年,1930年为庚午年,1940年为庚辰年,1950年为庚寅年。

寅以后,上述的口诀再重新开始,即1960年又为庚子年,1970年为庚戌年,1980年为庚申年,1990年为庚午年,以此类推,无有穷尽。

知道了每个0位年的地支,就可以从相近的两个0位年推出尾数为1、2、3、4、5、6、7、8、9这些年的地支。

我们任举一年,1954年的干支是什么?先定天干,我们已经知道0位数的天干是庚,那么,依次而推,1是辛、2是壬、3是癸、4是甲、5是乙、6是丙、7是丁、8是戊、9是己,所以54年的天干是甲。

由上述的口诀,我们已经知道,1950年的地支是寅。

那么,依次而推,1951年是卯、1952年是辰、1953年是巳、1954年是午。

excel公历转农历的四种方法

excel公历转农历的四种方法

excel公历转农历的四种方法excel公历转农历方法一:使用text函数A列是公历日期,我们在B1单元格输入公式:=TEXT(A1,"[$-130000]yyyy年m月"&I F(LEN(--TEXT(A1,"[$-130000]dd"))=1,"初","")&"d"),下拉完成公历转农历。

excel公历转农历方法二:使用text+MID函数A列仍然是公历,B1输入公式:=MID("甲乙丙丁戊己庚辛壬癸",MOD(TEXT(A1,"[$-13 0000]e")-4,10)+1,1)&MID("子丑寅卯辰巳午未申酉戌亥",MOD(TEXT(A1,"[$-130000]e")-4, 12)+1,1)&"年"&TEXT(A1,"[$-130000][DBNum1]m月d日"即可。

excel公历转农历方法三:使用text+MID+ CHOOSE+ YEAR函数A1为公历,B1输入:=CHOOSE(MOD(YEAR(A1)-1900,10)+1,"庚","辛","壬","癸","甲", "乙","丙","丁","戊","己")&CHOOSE(MOD(YEAR(A1)-1900,12)+1,"子","丑","寅","卯","辰","巳","午","未","申","酉","戌","亥")&TEXT(A1,"[dbnum1][$-130000]年m月"&IF(--TEXT(A1, "[$-130000]d")<11,"初","")&TEXT(A1,"[dbnum1][$-130000]d"))excel公历转农历方法四:使用自定义函数上面介绍的excel公历转农历都是使用excel内置函数完成的,有一个弊端就是公式太长,如果使用自定义函数,在公式栏就可以简化输入。

【公历年份换算农历干支纪年口诀】(含公元前后两种换算方法公式)简单、实用、易学、好记

【公历年份换算农历干支纪年口诀】(含公元前后两种换算方法公式)简单、实用、易学、好记

【公历年份换算农历干支纪年口诀】(含公元前后两种换算方法公式)简单、实用、易学、好记【公历年份换算农历干支纪年口诀】干支纪年法是中国历法上自古以来就一直使用的纪年方法,采用的是阴阳合历。

干支是天干和地支的总称。

把干支顺序相配正好六十为一周,周而复始,循环记录,这就是俗称的“干支表”。

干支纪年以每年春节换年。

而在历史教学中记录一些事件的发生时间都是采用公元纪年,公元纪年和干支纪年有一个简单的换算口诀如下:一,用数字对应天干地支:自然数: 1 2 3 4 5 6 7 8 9 0天干:甲乙丙丁戊己庚辛壬癸自然数: 1 2 3 4 5 6 7 8 9 10 11 0地支:子丑寅卯辰巳午未申酉戌亥二,举例(以2018为例):公元年数减去3——2018-3=201510除余數是天干——2015÷10=201……5(戊)该数再用12除——2015÷12=167……11(戌)余数就把地支显所以2018年按干支纪年就是戊戌年。

以上是公历公元年份换算成农历干支纪年的计算方法。

下面姜毅同志研究发现了另一段年份的换算方法,即:公历公元前年份换算成农历干支纪年的计算方法:一,用數字對應天干地支:0 9 8 7 6 5 4 3 2 1天干:甲乙丙丁戊己庚辛壬癸0 1110 9 8 7 6 5 4 3 2 1地支:子丑寅卯辰巳午未申酉戍亥二,口訣並舉例(以公元前57年為例):公元前年數加3:57+3=601.60除10的余數是天干:60÷10=6……0(0对应的天干是甲);还有一种更简单明了的方法,就是年数加3后的和不用作除10计算,直接用和的个位数与天干对应即可。

2.60除12的余数是地支:60÷12=5……0(0对应的地支是子)余数就把地支显所以公元前57年换算成农历干支纪年就是甲子年。

又如:将公元前1250年换算成干支年:1250+3=1253① 和的个位3对应的天干为辛②1253÷12=104 (5)余数5对应的地支为未故公元前1250年为辛未年。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

阳历转化成农历法
————————————————————————————————作者:————————————————————————————————日期:
c++中怎样将阳历转化成农历
已关闭20[ 标签:c++, 阳历, 农历 ] 小^鱼、2011-05-03 11:06
推荐答案
一、原理篇
1.公历转换农历的算法
公历(Gregorian Calendar)与农历(Chinese Lunar Calendar)的转换关系不是一个简单的公式就可以完成,其中的转换比较复杂,原因是农历的制定相当复杂,是根据天文观测进行指定的。

比较常用并且比较简单的公历转换农历算法就是查表方法。

首先要保存公历农历的转换信息:以任何一年作为起点,把从这一年起若干年的农历信息保存起来(在我的C++类中,是从1900年作为起点的。

选择一个起始点的思想十分重要,在下面的干支纪法和二十四节气中也体现到了)。

回想一下,我们平时是怎样来转换公历农历的呢?是查阅历书,历书中有每一天的公历农历,直接一查就可以了。

那么我们可不可以也这样做呢?当然可以,但是这样做要收录每一天的信息,工作量就会很大,所以我们要简化这些信息。

如何简化呢?
要保存一年的信息,其实只要两个信息就可以了:(1)农历每个月的大小;(2)今年是否有闰月,闰几月以及闰月的大小。

用一个整数来保存这些信息就足够了。

具体的方法是:用一位来表示一个月的大小,大月记为1,小月记为0,这样就用掉了12位,再用低四位来表示闰月的月份,没有闰月记为0。

比如说,2000年的信息数据是0x0c960,转化成二进制就是1100100101100000,表示的含义是1、2、5、8、10、11月大,其余月小,低四位为0说明没有闰月。

2001年的农历信息数据是0x0d954,其中的4表示该年闰4月,月份大小信息就是0x0d95,具体的就是1、2、4、5、8、10、12月大,其余月小。

这样就可以用一个数组来保存这些信息。

在我的C++类中是用m_lunarInfo这个数组来保存这些信息的。

下面就是公历转换成农历的具体算法:
(1)计算所求时间到起始年正月初一的天数。

(2)从起始年份开始,减去每一月的天数,一直到剩余天数没有下一个月多为止。

此时,m_lunarInfo的下标到了多少,就是减去了多少年,用起始年份加上这个下标就可以得到农历年份,然后看减去了几个月。

如果本年不闰月或者闰月还在后面,就可以直接得到农历月份,如果在闰月月份数后面一个月,则这个月就是闰月。

剩余的天数就是农历日。

(具体实现时有所改进。


2.利于泰勒公式巧算星期
在应用数学中有一个计算某一天是星期几的公式,这就是泰勒公式。

公式如下:
w = [c÷4] - 2c + y + [y÷4] + [26(m+1)÷10] + d - 1,其中w就是所求日期的星期数。

如果求得的数大于(小于)7,就减去(加上)7的倍数,直到余数小于7为止。

式子中c是指公
元年份的前两位数字,y是后两位数字,m是月数,d是日数。

方括弧[]表示对于括号中的数字取整。

还有一个特别要注意的地方:所求的月份如果是1月或2月,则应视为上一年的13月或14月,也就是公式中m的取值范围是从3到14而不是从1到12。

3.干支纪法
天干有十个,就是甲、乙、丙、丁、戊、己、庚、辛、壬、癸,地支有十二个,依次是子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥。

古人把它们按照一定的顺序而不重复地搭配起来,从甲子到癸亥共六十对,叫做六十甲子。

我国古人用这六十对干支来表示年、月、日、时的序号,周而复始,不断循环,这就是干支纪法。

0甲子1乙丑2丙寅3丁卯4戊辰5己已6庚午7辛未8壬申9癸酉10甲戌
11乙亥
12丙子
13丁丑
14戊寅
15己卯
16庚辰
17辛已
18壬午
19癸未
20甲申
21乙酉
22丙戌
23丁亥
24戊子
25己丑
26庚寅
27辛卯
28壬辰
29癸已
30甲午
31乙未
32丙申
33丁酉
34戊戌
35已亥
36庚子
37辛丑
38壬寅
39癸卯
40甲辰
41乙已
42丙午
43丁未
44戊申
45己酉
46庚戌
47辛亥
48壬子
49癸丑
50甲寅
51乙卯
52丙辰
53丁已
54戊午
55己未
56庚申
57辛酉
58壬戌
59癸亥
得到年、月、日的干支表示原理是相同的,即所求的年、月、日到起始年、月、日所经历的年数、月数、天数,加上起始年、月、日干支表示在上表中的序号,与10取模得到天干的序号,与12取模得到地支的序号。

以年为例,1900年立春后为庚子年,查上表可知,庚子年为六十甲子的第36位,所以所求年份m_year到1900年的年数为m_year-1900+36-1(如果月份m_month小于等于2月)或m_year-1900+36(如果月份m_month大于2月)。

同理,可以得到月、日的干支表示。

最后,还要依据节气(立春)调整二月份的干支纪年;依据每月的第一个节气的日期调整月的干支表示,具体情况源程序中有详细的说明。

古人根据太阳升起的时间,将一昼夜区分为十二个时辰,用十二地支为代号。

如果用m_hour表示公历现在的小时数(二十四表示法),则(m_hour+1)/2就得到时间的地支表示(其实是地支的序号)。

4.二十四节气
节气就实质而言是属于阳历范畴,从天文学意义来讲,二十四节气是根据地球绕太阳运行的轨道(黄道)360度,以春分点为0点,分为二十四等分点,两等分点相隔15度,每个等分点设有专名,含有气候变化、物候特点、农作物生长情况等意义。

二十四节气即立春、雨水、惊蜇、春分、清明、谷雨、立夏、小满、芒种、夏至、小暑、大暑、立秋、处暑、白露、秋分、寒露、霜降、立冬、小雪、大雪、冬至、小寒、大寒。

以上依次顺属,逢单的均为"节气",通常简称为"节",逢双的则为"中气",简称为"气",合称为"节气"。

现在一般统称
为二十四节气。

自古节气的推算是由一年平分24等分所得的平节气。

旧历用平气法推算二十四气,此法将一回归年均分成二十四等分,从冬至开始等间隔地依次相间安排各个节气及中气,而各气之间太阳所运行的度数因此并不相等。

新历推算则用定气法,此法将黄道上的周天度数等分成二十四份,太阳移至某一分点时,即定为某一节气的日期,由于太阳的视运动迟速不均,因此各节气间相隔的时间亦不等。

但不论新历或旧历,均取冬至为二十四气之首,故在春、秋分时彼此的差别最大。

为何中国传统历家早知推算定气,却又习用平气注历?此主要或由于平气易于计算所致,因在此法之下,各节气与节气间或中气与中气间相隔固定为三十日五时辰又二刻。

本C++类中实现二十四节气的计算,使用的是平节气的简单算法。

用数组sTermInfo
记录从小寒开始的各个节气相对于小寒所经历的分钟数,并用int sTerm(int y, int n)函数得到某年y的第n个节气为所在月的第几日(n从0小寒起算)。

由于没有考虑岁差与章动,所以精确度不是很高。

相关文档
最新文档