怎么把阳历转农历,公历转换农历四种算法
发布:小编
本文目录
公历转换农历四种算法
农历转换成公历的计算公式? 因为公历(现在用的是格里历,以前还曾用儒列历)和中国农历都不是严格按一个公式计算得到的,所以两个历法没有直接的公式。
试图用一个简单的公式,而不利用许多像万年历一样的数据(尽管可以简化),就达到公农历转换的目的,这是不可能的。我们能见到的所有公农历转换的软件,都存有多少不等的一些年份的历法数据。
这些数据之中,最重要的是农历的每月天数。因为农历是阴阳历,阴历部分(按月相编的部分)决定月日,阳历部分(按太阳高度编的部分)就是节气。节气基本上是与公历直接对应的,可以较容易的推算;但月相周期与地球公转的关系相对复杂,一般都需要天文观测数据授时,所以农历每月是大月还是小月没有简单的公式。
至于公历和农历的置闰,倒都有一定的方式推算,并不困难。
如果只是天文数据,其实都还是可以算的――因为天文周期十分稳定,我们只要严格地按天文周期推算就可以了。可是还有更为麻烦的一点,就是公历和农历这些历法,并不是完全严格地按照天文上的实际周期进行的,还有许多人为的因素。最著名的就是罗马皇帝几次修改2、8等月份长短,以及儒列历中因计算不准确而人为地去掉了十天等事。中国农历也有因为古代天文观测不准确造成的 *** 颁布的历法与天象不吻合的(我们不能苛求古人观测的精度)。所以这两部历法都是与一个时期社会有关的东西,也就没有一定的规律可循了。
农历转换公历对照表 是公历1945年4月29日 星期日
农历和公历是怎么转换的?(怎么算的?) 你是要口算还是要用笔算?
告诉你,这样子算不靠谱的,根本算不出来,涉及到的转换不是简单的几个公式能得出,相反,它的转换相当复杂。
如果有兴趣编写程序的,我可以提供转换函数库,调用一个函数就可以实现农历与公历的互转了。
目前我已经完美地实现了转换,如果需要,我可以提供。
日期转换为农历日期的算法是什么 excel公历转农历方法一:使用text函数 A列是公历日期,我们在B1单元格输入公式:=TEXT(A1,[$-130000]yyyy年m月&IF(LEN(--TEXT(A1,[$-130000]dd))=1,初,)&d),下拉完成公历转农历。
excel如何农历转换阳历公式 比如今天是2010年9月2日,用以下公式就可以得出农历七月二十四:
虽然在遇到闰月时,显示结果有点差强人意,如下图中,2010年2月9日的农历应是十二月二十六,但因为那年有个闰五月,就无辜多出来一个月了。不过总比编代码要快捷多了吧,而且闰月也不是天天有。
假如把公式改成:=MID(甲乙丙丁戊己庚辛壬癸,MOD(TEXT(A2,[$-130000]e)-4,10)+1,1)&MID(子丑寅卯辰巳午未申酉戌亥,MOD(TEXT(A2,[$-130000]e)-4,12)+1,1)&年&TEXT(A2,[$-130000][DBNum1]m月)&TEXT(A2,IF(--TEXT(A2,[$-130000]d)=10,初十,IF(--TEXT(A2,[$-130000]d)>10,[$-130000][DBNum1]d,初[$-130000][DBNum1]d))),那就更像农历表示法了,不过因为农历每年开始日期都不一样,所以函数很难达到十分精确的结果,只能是将就着用。
实现阳历转阴历算法 下面是一个关于VB的农历算法
'日期数据定义方法如下
'前12个字节代表1-12月为大月或是小月,1为大月30天,0为小月29天;
'第13位为闰月的情况,1为大月30天,0为小月29天;
'第14位为闰月的月份,如果不是闰月为0,否则给出月份,10、11、12分别用A、B、C来表示,即使用16进制;
'最后4位为当年家农历新年-即农历1月1日所在公历的日期,如0131代表1月31日。
Function GetChgDate(ByVal vDate As String, ByVal ChgType As 转换方式) As String
Dim vvdate() As String = Split(vDate, -)
If vvdate(0) > 2011 Or vvdate(0) >
农历与阳历如何计算 阴历阳历转换计算公式
1、阳历日期推算阴历日期的方法:
前已述及阴历日期是以月亮的圆缺为计月单位,其以逢朔为初一,以月望为十五(大月为十六日),以月晦为二十九日(大月为三十日)。
如要知道1984年6月8日是阴历几日?可以利用公式推算阴历日期: 设:公元年数-1977(或1901)=4Q+R
则:阴历日期=14Q+10.6(R+1)+年内日期序数-29.5n (注:式中Q、R、n均为自然数,R>
在EXCEL中怎样把公历转换成农历 Dim WeekName(7), MonthAdd(11), NongliData(99), TianGan(9), DiZhi(11), ShuXiang(11), DayName(30), MonName(12)
Dim curTime, curYear, curMonth, curDay, curWeekday
Dim GongliStr, WeekdayStr, NongliStr, NongliDayStr
Dim i, m, n, k, isEnd, bit, TheDate
Private Sub Form_Load()
'获取当前系统时间
curTime = Now()
'星期名
WeekName(0) = *
WeekName(1) = 星期日
WeekName(2) = 星期一
WeekName(3) = 星期二
WeekName(4) = 星期三
WeekName(5) = 星期四
WeekName(6) = 星期五
WeekName(7) = 星期六
'天干名称
TianGan(0) = 甲
TianGan(1) = 乙
TianGan(2) = 丙
TianGan(3) = 丁
TianGan(4) = 戊
TianGan(5) = 己
TianGan(6) = 庚
TianGan(7) = 辛
TianGan(8) = 壬
TianGan(9) = 癸
'地支名称
DiZhi(0) = 子
DiZhi(1) = 丑
DiZhi(2) = 寅
DiZhi(3) = 卯
DiZhi(4) = 辰
DiZhi(5) = 巳
DiZhi(6) = 午
DiZhi(7) = 未
DiZhi(8) = 申
DiZhi(9) = 酉
DiZhi(10) = 戌
DiZhi(11) = 亥
'属相名称
ShuXiang(0) = 鼠
ShuXiang(1) = 牛
ShuXiang(2) = 虎
ShuXiang(3) = 兔
ShuXiang(4) = 龙
ShuXiang(5) = 蛇
ShuXiang(6) = 马
ShuXiang(7) = 羊
ShuXiang(8) = 猴
ShuXiang(9) = 鸡
ShuXiang(10) = &q......>>
如何把农历转成阳历,求算法 int lunarInfo[]={/*阴历数据*/
0x04bd8,0x04ae0,0x0a570,0x054d5,0x0d260,0x0d950,0x16554,0x056a0,0x09ad0,0x055d2,
0x04ae0,0x0a5b6,0x0a4d0,0x0d250,0x1d255,0x0b540,0x0d6a0,0x0ada2,0x095b0,0x14977,
0x04970,0x0a4b0,0x0b4b5,0x06a50,0x06d40,0x1ab54,0x02b60,0x09570,0x052f2,0x04970,
0x06566,0x0d4a0,0x0ea50,0x06e95,0x05ad0,0x02b60,0x186e3,0x092e0,0x1c8d7,0x0c950,
0x0d4a0,0x1d8a6,0x0b550,0x056a0,0x1a5b4,0x025d0,0x092d0,0x0d2b2,0x0a950,0x0b557,
0x06ca0,0x0b550,0x15355,0x04da0,0x0a5d0,0x14573,0x052d0,0x0a9a8,0x0e950,0x06aa0,
0x0aea6,0x0ab50,0x04b60,0x0aae4,0x0a570,0x05260,0x0f263,0x0d950,0x05b57,0x056a0,
0x096d0,0x04dd5,0x04ad0,0x0a4d0,0x0d4d4,0x0d250,0x0d558,0x0b540,0x0b5a0,0x195a6,
0x095b0,0x049b0,0x0a974,0x0a4b0,0x0b27a,0x06a50,0x06d40,0x0af46,0x0ab60,0x09570,
0x04af5,0x04970,0x064b0,0x074a3,0x0ea50,0x06b58,0x055c0,0x0ab60,0x096d5,0x092e0,
0x0c960,0x0d954,0x0d4a0,0x0da50,0x07552,0x056a0,0x0abb7,0x025d0,0x092d0,0x0cab5,
0x0a950,0x0b4a0,0x0baa4,0x0ad50,0x055d9,0x04ba0,0x0a5b0,0x15176,0x052b0,0x0a930,
0x07954,0x06aa0,0x0ad50,0x05b52,0x04b60,0x0a6e6,0x0a4e0,0x0d260,0x0ea65,0x0d530,
0x05aa0,0x076a3,0x096d0,0x04bd7,0x04ad0,0x0a4d0,0x1d0b6,0x0d250,0x0d520,0x0dd45,
0x0b5a0,0x056d0,0x055b2,0x049b0,0x0a577,0x0a4b0,0x0aa50,0x1b255,0x06d20,0x0ada0};
int solarMonth[]={31,28,31,30,31,30,31,31,30,31,30,31};
---------------------------------------------------------------------------
int lYearDays(int y) {
int i, sum = 348;
for(i=0x8000; i>0x8; i>>=1) sum += (lunarInfo[y-190......>>
如何根据公历快速算出农历年份
根据公历快速算出农历可以通过Excel表格。具体如下:
电脑:华为笔记本。
系统:Windows10专业版2004。
工具:excel2019。
第一步,准备好一份用Excel做好的公历日期表格。
第二步,输入函数=text。
第三步,A2表示公历日期。
第四步,后面这串英文表示输入日期的格式=yyyy-m-d。
第五步,中间这个公式也是一种格式=[$-130000]。
第六步,完整的公式=TEXT(A2,"[$-130000]yyyy-m-d"),回车一个公历就出来了,剩下的下拉填充即可。
第七步,根据公历快速算出农历的结果就出来了。
excel怎么将公历日期转为农历日期格式
估计有的用户还不了解Excel公历日期转为农历的操作,下文小编就分享Excel公历日期转为农历的方法步骤,来下文看一看吧,希望对你们有所帮助哦。
以下面这个表格为例子,左边是公历,右边是农历。在农历的单元格中填入一下函数公式。=TEXT(A2,[-130000]yyyy-m-d)
当中A2表示要转换的公历单元格,yyyy-m-d表示转换日期的格式,而[-130000]就是农历转换的关键。最后回车然后填充即可。
若你认为这个农历的格式不好看,没有中国传统显示的特色,那公式可以改一改:=TEXT(A2,[-130000]yyyy年m月IF(LEN(--TEXT(A2,[-130000]dd))=1,初,)d)。然后同样回车填充即可。这样就能有几月初几的显示了。
阳历和阴历怎么换算对应
阳历和阴历之间是不能换算的,二者采用的计算方法不同,没有特殊关系可以查询,只能分别计算。
太阳历,又称为阳历,是以地球绕太阳公转的运动周期为基础而制定的历法。太阳历的历年近似等于回归年,一年12个月,这个“月”,实际上与朔望月无关。
阳历的月份、日期都与太阳在黄道上的位置较好地符合,根据阳历的日期,在一年中可以明显看出四季寒暖变化的情况;但在每个月份中,看不出月亮的朔、望、两弦。
阴历,中国传统历法之一,也被称为旧历、汉历、古历等,辛亥革命后改用西方太阳历(公历),而近现代使用的农历属于阴阳合历,也就是阴历和阳历的合历。
阴历,其计算方法是:
以太阴圆缺一周为一月,历时29日12小时44分2.8秒,太阴圆缺十二周为一年,历时354日8小时48分33.6秒。每一年的12个月中,6个单数月份(即1、3、5、7、9、11月)为“大建”,每月为30天。
6个双数月份(2、4、6、8、10、12月)为“小建”,每月为29天;在逢闰之年,将12月改大月为30天。该历以30年为一周期,每一周期里的第2、5、7、10、13、16、18、21、24、26、29年,共11年为闰年, 不设置闰月,而在12月末置一闰日,闰年为355日,另19年为平年,每年354日。
故平均每年为354日8小时48分。按该历全年实际天数计算,比回归年约少10日21小时1分,积2.7回归年相差一月,积32.6回归年相差一年。该历对昼夜的计算,以日落为一天之始,到次日日落为一日,通常称为夜行前,即黑夜在前,白昼在后,构成一天。
以上就是关于怎么把阳历转农历,公历转换农历四种算法的全部内容,以及阳历转农历的相关内容,希望能够帮到您。
版权声明:本文来自用户投稿,不代表【推酷网】立场,本平台所发表的文章、图片属于原权利人所有,因客观原因,或会存在不当使用的情况,非恶意侵犯原权利人相关权益,敬请相关权利人谅解并与我们联系(邮箱:350149276@qq.com)我们将及时处理,共同维护良好的网络创作环境。
大家都在看
-
篪虎是什么意思,暴龙战士是什么东西
好名分享本文目录1.暴龙战士是什么东西2.取名垚是什么意思3.头像狮子4.认命的意思认命的意思是什么呢暴龙战士是什么东西chí虎暴龙,一种传说级的人造愤青,身为异族却跪舔汉人,天生贱命格,永远的活该型悲剧生物取名垚是什么意思导读:篪这个字一般人还真不懂,不知其音,也不知其义,更别说会用这
-
88年属什么,88年属什么的生肖
好名分享本文目录1.88年属什么的生肖2.1992年生的属相是什么3.八八年属什么生肖4.88年属什么的生肖88年属什么的生肖1988年春节2月17号及之后是属龙,2月16号及之前是属兔。传说辰时正是群龙行雨的时候,此时自然属龙了。卯时已经进入清晨,但太阳还没有出来,照亮大地的还是月亮,
-
属相婚配表配对查询,男女十二生肖配对详细表
好名分享本文目录1.男女十二生肖配对详细表2.生肖婚配表大全配3.十二生肖婚配属相合婚配对表带年份4.十二生肖婚配表 属相配对男女十二生肖配对详细表在中国很多人都会参考一下自己的属相配对法,下面来看看十二生肖配对表!十二生肖配对表1、十二生肖与十二地支相对应,十二地支具有五行相生相克及刑
-
rosanne,名字里有梓取英文名
好名分享本文目录1.名字里有梓取英文名2.女孩英文名字 简单好听3.RosanneKaton是什么职业4.香港二人组合男歌手名字里有梓取英文名(lily)昵称Sue??,Suke??,Suky??,Susie??,Susy?2Roxane 罗克珊 luokeshan 来源:古代英语,简明
-
车牌号码测吉凶 免费,周易测车牌号吉凶查询
好名分享本文目录1.周易测车牌号吉凶查询2.测车牌号吉凶最准确的免费3.怎么测试手机号码吉凶4.车牌号吉中带凶怎么化解周易测车牌号吉凶查询在我国的命运学书籍中,周易是很可靠的一本书籍,里面记载了许多关于命理的智慧学说。在数字学说中,有着数字对于数字的影响。那么你也能想到,生辰八字和车牌号
-
生肖星座运势,生肖星座运势查询每日更新
好名分享本文目录1.生肖星座运势查询每日更新2.十二星座最懦弱的星座3.属鸡双鱼座2021年运势详解4.属龙双鱼座2021年运势详解生肖星座运势查询每日更新在黄道十二宫中,每一个黄道十二宫都有自己的黄道十二宫,相互匹配或冲突。在十二生肖的婚姻中,如果两个对立面归属在一起,会给家庭带来不利
-
绿海湾花园,三湘海尚和绿海湾哪个好一点
好名分享本文目录1.三湘海尚和绿海湾哪个好一点2.深圳南山绿海湾是属于哪个街道的3.绿海湾花园开盘价4.海湾设备状态是什么意思三湘海尚和绿海湾哪个好一点如果需要得房率高的选择绿海湾,如果3房也够用,湾区头牌三湘海尚绝对是首选。三湘海尚小区介绍:共9栋高层,E栋写字楼,5栋联排别墅共37户
-
belinda,belinda名字的意义简称
好名分享本文目录1.belinda名字的意义简称2.be指的是什么在英语中3.nelson英文名怎么读4.贝琳达的介绍卡belinda名字的意义简称英文名Belinda [blind]中文音译贝琳达名字性别 女孩英文名名字寓意美丽的,正直,诚信,不善变 扩展资料 名字印象诚实,可靠而且喜
-
旧历新历换算,阳历和阴历怎么换算对应
好名分享本文目录1.阳历和阴历怎么换算对应2.农历和新历怎么换算3.新历和农历的转换有什么规律吗4.公历和农历怎么换算阳历和阴历怎么换算对应阳历和阴历之间是不能换算的,二者采用的计算方法不同,没有特殊关系可以查询,只能分别计算。太阳历,又称为阳历,是以地球绕太阳公转的运动周期为基础而制定
-
刘德华原名叫什么 做过什么职业,刘德华真名到底叫什么名字
好名分享本文目录1.刘德华真名到底叫什么名字2.刘德华的原名叫什么名字呢3.刘德华的简介和朱丽倩连接有多大4.刘德华原名是什么?刘德华真名到底叫什么名字姓名: 刘德华英文名: Lau Tak Wah, Andy出生地: 香港出生日期: 27-9-1961星座: 天秤座生肖: 牛身高: 1
-
注册商贸公司的流程,注册贸易公司需要的流程和材料有哪些要
好名分享本文目录1.注册贸易公司需要的流程和材料有哪些要求2.注册商贸公司需要准备什么材料3.怎样注册商贸公司,需要什么手续4.商贸公司注册流程及需要的材料需要健康证么注册贸易公司需要的流程和材料有哪些要求贸易公司听起来像一家大公司。老板是个商业大亨。这应该是很多人都认可的。实际上,贸易
-
康熙字典在线查字,康熙字典在线查字五行属火的字
好名分享本文目录1.康熙字典在线查字五行属火的字2.康熙字典在线查字繁体字字典取名3.康熙字典在线查字安康网免费查询4.康熙繁体字典在线查字笔画汉程网康熙字典在线查字五行属火的字五行属木的字竹: 一生秀气伶俐,多才巧智,成功昌隆,晚年子孙旺盛之字。宜:意为适合、适当。欣:意为快乐、生机旺