当前位置:首页 » 操作系统 » 算法题接雨水

算法题接雨水

发布时间: 2024-08-03 00:04:32

❶ 天干地支纪年算法(请看问题补充)

天干:甲、乙、丙、丁、戊、己、庚、辛、壬、癸。
地支:子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥。
具体的计算方法为:
(年份-3)/10余数为天干
(年份-3)/12余数为地支
把天干数和地支数合并起来,即为所求的干支年份。
再答:
看看这样的算法可以不
具体的计算方法为:
天干:年份÷10,得到的商不管,看余数,若余数-3得正,则按天干顺序往下数,得数即为天干顺序数,若余数-3为负,则+10,得到的数即为天干数,若余数为3,则为天干的最后一位,即癸。
地支:年份÷12,得到的商不管,看余数,若余数-3得正,则按地支顺序往下数,得数即为地支顺序数。若余数-3为负,则+12,得到的数即为地支顺序数,若余数为3,则为地支的最后一位,即亥。
把天干数和地支数合并起来,即为所求的干支年份。
如:2001年查万年历为辛巳年,算法为:
2001÷10=200……1,1—3=—2,—2+10=8,按天干顺序数到8,甲、乙、丙、丁、戊、己、庚、辛。第8位为辛。
2001÷12=166……9,9—3=6,按地支顺序数到6,子、丑、寅、卯、辰、巳。第6位为巳。
按照以上计算结果,把天干、地支合并起来可知,2001年为辛巳年。

❷ 怎么计算天干地支的算法大神们帮帮忙

天干地支简称“干支”,取义于树木的干和枝 天干有十:甲、乙、丙、丁、戊(wù)、己、庚、辛、壬(rén)、癸(guǐ); 地支十二:子、丑、寅、卯(mǎo)、辰(chén)、巳(sì)、午、未(wèi)、申、酉(yǒu)、戌(xū)、亥。 天干地支组合成如下六十个计时序号,作为纪年、月、日、时的名称,叫“干支纪年法”。 编辑本段六十甲子顺序 1 ~10 甲子 乙丑 丙寅 丁卯 戊辰 己巳 庚午 辛未 壬申 癸酉 11~20 甲戌 乙亥 丙子 丁丑 戊寅 己卯 庚辰 辛巳 壬午 癸未 21~30 甲申 乙酉 丙戌 丁亥 戊子 己丑 庚寅 辛卯 壬辰 癸巳 31~40甲午 乙未 丙申 丁酉 戊戌 己亥 庚子 辛丑 壬寅 癸卯 41~50甲辰 乙巳 丙午 丁未 戊申 己酉 庚戌 辛亥 壬子 癸丑 51 ~60甲寅 乙卯 丙辰 丁巳 戊午 己未 庚申 辛酉 壬戌 癸亥 用六十甲子依次纪年,六十年一个轮回。干支纪年法的新一年由立春开始,2009年的立春是二月四日,所以2009年2月4日立春之后才是己丑年,在此之前应是戊子年。公元纪年的一年以立春为界前后分属不同的干支纪年,这一点不熟悉的人容易搞错,应特别注意。 编辑本段与公元纪年的换算 第一种算法: 如何将公元纪年换算成干支纪年: 不同资料算法有所差异,有的给出公式,但本质上是一回事。这里介绍一种简易直观的算法。 首先给每个天干、地支一个编号,从头以4开始循序排下去,天干10后接1,。地支12后接1。 天干:甲4、乙5、丙6、丁7、戊8、己9、庚10、辛1、壬2、癸3 地支:子4、丑5、寅6、卯7、辰8、巳9、午10、未11、申12、酉1、戌2、亥3 以公元年的尾数在天干中找出对应该尾数的天干,再将公元纪年除以12,用除不尽的余数在地支中查出对应该余数的地支,这样就得到了公元纪年的干支纪年。如2003年,其尾数为3,对应的天干为“癸”;以12除2003得166,余数为11,对应的地支为未。于是2003年的干支纪年为“癸未”年。注意这是指2003年立春之后,立春之前应是“壬午”年。赵达先生在“祭文”中指出的时间是“癸未清明”,清明是立春之后的第四个节气(立春、雨水、惊蛰、春分、清明),所以赵先生说岁在癸未,而非壬午。 第二种算法: 1. 天干算法:用公元纪年数减3,除以10(不管商数)所得余数,就是天干所对应的位数; 2. 地支算法:用公元纪年数减3,除以12(不管商数)所得余数,就是地支所对应的位数; 天干:甲、乙、丙、丁、戊、已、庚、辛、壬、癸 地支:子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥 例1. 我们以2010年为例; 天干算法: 2010-3=2007, 2007/10=200余7, 7对应天干第7位是庚,即天干为庚; 地支算法: 2010-3=2007, 2007/12=167余3, 3对应地支第3位是寅,即地支为寅; 综上公元2010是用天干地支纪年为庚寅年。为使各位信任此算法,本人再举一例来说明: 例2. 我们再以1987年为例; 天干算法: 1987-3=1984, 1984/10=198余4, 4对应天干第4位是丁,即天干为丁; 地支算法: 1987-3=1984, 1984/12=165余4, 4对应地支第4位是卯,即地支为卯; 综上公元1987是用天干地支纪年为丁卯年。 第三种算法: 首先,将天干、地支编号如下: 天干:甲、乙、丙、丁、戊、已、庚、辛、壬、癸 4 5 6 7 8 9 10 1 2 3 地支:子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥 4 5 6 7 8 9 10 11 12 1 2 3 如要将公元纪年换算成干支纪年,以公元年的尾数在天干中找出相对应。然后,将公元纪年除以12,用余数在地支中找出所对应的地支。这样,公元纪年就换算成了干支纪年。 如:公元1995年 用该年尾数5找出对应的天干为“乙”;然后,用1995除以12得余数为3,用余数3找出相对应的地支为“亥”。 那么,公元1995年则为农历乙亥年。 再如:公元1861年 用尾数1查天干为“辛”,用1861除以12得余数为1,再用余数1查找地支为“酉”。那么,公元1861年则为农历辛酉年。 如果某一年的尾数为0或者用该年除以12的余数为0,则取天干中的第10位“庚”和地支中的第12位“申”。 如:公元120年 尾数0则取天干中的“庚”;除以12余数为0,则取地支中的第12位“申”。 那么,公元120年则为庚申年。 如果公元纪年是单个数字,就用该数字在天干、地支中查找即可。如:公元6年,则在天干、地支中找出6相对应的“丙”和“寅”,那么该年则为丙寅年。公元8年则为戊辰年。 公元11年,则取尾数1对应的天干中的“辛”和11对应的地支中的“未”。那么,该年则为辛未年。 公元12年则为壬申年。 公元前纪年与干支纪年的换算 将天干、地支编号如下: 天干:甲、乙、丙、丁、戊、已、庚、辛、壬、癸 7 6 5 4 3 2 1 10 9 8 地支:子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥 9 8 7 6 5 4 3 2 1 12 11 10 具体换算方法同一 如:公元前155年 用尾数5取天干中的“丙”; 155除以12得余数11,对应地支中的“戌”。那么,该年则为丙戌年。 公元前8年则为癸丑年 天干地支纪月 干支纪月时,每个地支对应二十四节气自某节气(非中气)至下一个节气,以交节时间决定起始的一个月期间,不是农历某月初一至月底。许多历书注明某农历月对应某干支,只是近似而非全等对应。若遇甲或己的年份,正月大致是丙寅;遇上乙或庚之年,正月大致为戊寅;丙或辛之年正月大致为庚寅,丁或壬之年正月大致为壬寅,戊或癸之年正月大致为甲寅。依照正月之干支,其余月份按干支推算。60个月合5年一个周期;一个周期完了重复使用,周而复始,循环下去。东汉光武帝建武二十九年癸丑年(公元53年)冬至月(大雪至小寒的月份,近似农历十一月)就是“甲子月”。有歌诀为证:甲己之年丙作首,乙庚之岁戊为头;丙辛必定寻庚起,丁壬壬位顺行流;更有戊癸何方觅,甲寅之上好追求。 下表是地支纪月时对应的节气时间段、中气、近似农历月份、近似阳历月份、以及年天干和月地支构成的月干支: 月地支 节气时间段 中气 近似农历月份 近似阳历月份 甲或己年 乙或庚年 丙或辛年 丁或壬年 戊或癸年 寅月 立春—惊蛰 雨水 正月 2月 丙寅月 戊寅月 庚寅月 壬寅月 甲寅月 卯月 惊蛰—清明 春分 二月 3月 丁卯月 己卯月 辛卯月 癸卯月 乙卯月 辰月 清明—立夏 谷雨 三月 4月 戊辰月 庚辰月 壬辰月 甲辰月 丙辰月 巳月 立夏—芒种 小满 四月 5月 己巳月 辛巳月 癸巳月 乙巳月 丁巳月 午月 芒种—小暑 夏至 五月 6月 庚午月 壬午月 甲午月 丙午月 戊午月 未月 小暑—立秋 大暑 六月 7月 辛未月 癸未月 乙未月 丁未月 己未月 申月 立秋—白露 处暑 七月 8月 壬申月 甲申月 丙申月 戊申月 庚申月 酉月 白露—寒露 秋分 八月 9月 癸酉月 乙酉月 丁酉月 己酉月 辛酉月 戌月 寒露—立冬 霜降 九月 10月 甲戌月 丙戌月 戊戌月 庚戌月 壬戌月 亥月 立冬—大雪 小雪 十月 11月 乙亥月 丁亥月 己亥月 辛亥月 癸亥月 子月 大雪—小寒 冬至 十一月 12月 丙子月 戊子月 庚子月 壬子月 甲子月 丑月 小寒—立春 大寒 十二月 1月 丁丑月 己丑月 辛丑月 癸丑月 乙丑月 干支纪月法未普遍实行,主要为星相家推算八字用。 推算实例:2004年大致是农历甲申年。那次甲申年自2004年2月4日19时56分立春起,至2005年2月4日1时43分立春止。这里的时刻是东经120度标准时。 丙寅月,2004年2月4日19时56分立春~2004年3月5日13时56分惊蛰 丁卯月,2004年3月5日13时56分惊蛰~2004年4月4日18时43分清明 戊辰月,2004年4月4日18时43分清明~2004年5月5日12时2分立夏 己巳月,2004年5月5日12时2分立夏~2004年6月5日16时14分芒种 庚午月,2004年6月5日16时14分芒种~2004年7月7日2时31分小暑 辛未月,2004年7月7日2时31分小暑~2004年8月7日12时20分立秋 壬申月,2004年8月7日12时20分立秋~2004年9月7日15时13分白露 癸酉月,2004年9月7日15时13分白露~2004年10月8日6时49分寒露 甲戌月,2004年10月8日6时49分寒露~2004年11月7日9时59分立冬 乙亥月,2004年11月7日9时59分立冬~2004年12月7日2时49分大雪 丙子月,2004年12月7日2时49分大雪~2005年1月5日14时3分小寒 丁丑月,2005年1月5日14时3分小寒~2005年2月4日1时43分大寒 天干地支纪日 干支纪日,60日大致合2个月一个周期;一个周期完了重复使用,周而复始,循环下去。确定的文献指出干支纪日始于鲁隐公三年夏历二月己巳日(公元前720年二月初十)。 因为儒略历的平年有365日,而每4年一次,公元年能被4整除,闰年有366日,平均一年365.25日,所以4年1461日和一甲子的60日,最小公倍数是29220日,合80年。这就是说,每80年,干支纪日对应的儒略历月日日期会反复一次循环。(公元4年本来应为闰年,但因为公元前45年开始实施儒略历后,“每隔3年”加一次闰日被误为“每3年”加一次闰日,所以罗马皇帝屋大维下令前5年、前1年、4年停闰以修正错误置闰。) 因为格里历的平年有365日,而每4年一次闰年,但是如果遇上整百年,公元年能被400整除才能认定为闰年(这是因为按照现在立法计算,四年一闰的规定使每年多出0.0078天,经过400年大约会多出3天,如果在能被400整除年份的前面3个百年不算闰年,则正好平衡),闰年有366日,平均一年365.2425日,所以400年146097日和一甲子的60日,最小公倍数是2921940日,合8000年。这就是说,每80年,干支纪日对应的格里历月日日期若没有遇到能被100但非400整除的公元年,会反复一次循环,但整体而言,假设未来从不改格里历,每8000年,干支纪日对应的格里历月日日期才会反复一次完整的循环。1912年2月18日,合农历壬子年正月初一,以及9912年2月18日,都是“甲子日”。 天干地支纪时 干支纪时,60时辰合5日一个周期;一个周期完了重复使用,周而复始,循环下去。必须注意的是子时分为0时到1时的早子时和23时到24时的晚子时,所以遇到甲或己之日,0时到1时是甲子时,但23时到24时是丙子时。晚子时又称子夜或夜子。日上起时亦有歌诀:甲己还加甲,乙庚丙作初;丙辛从戊起,丁壬庚子居;戊癸何方发,壬子是真途。下表列出日天干和时辰地支构成的时辰干支,以北京时间(UTC+8)为准: 时辰地支 北京时间(UTC+8)甲或己日 乙或庚日 丙或辛日 丁或壬日 戊或癸日 子时 23时—1时 甲子时 丙子时 戊子时 庚子时 壬子时 丑时 1时—3时 乙丑时 丁丑时 己丑时 辛丑时 癸丑时 寅时 3时—5时 丙寅时 戊寅时 庚寅时 壬寅时 甲寅时 卯时 5时—7时 丁卯时 己卯时 辛卯时 癸卯时 乙卯时 辰时 7时—9时 戊辰时 庚辰时 壬辰时 甲辰时 丙辰时 巳时 9时—11时 己巳时 辛巳时 癸巳时 乙巳时 丁巳时 午时 11时—13时 庚午时 壬午时 甲午时 丙午时 戊午时 未时 13时—15时 辛未时 癸未时 乙未时 丁未时 己未时 申时 15时—17时 壬申时 甲申时 丙申时 戊申时 庚申时 酉时 17时—19时 癸酉时 乙酉时 丁酉时 己酉时 辛酉时 戌时 19时—21时 甲戌时 丙戌时 戊戌时 庚戌时 壬戌时 亥时 21时—23时 乙亥时 丁亥时 己亥时 辛亥时 癸亥时 天干地支次序表 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.壬戌 60.癸亥 天干地支的计算方法 (年份- 3)/10余数对天干 如1894-3=1891 ,1891除以10余数是1即为甲 (年份- 3)/12余数对地支 如1894-3=1891 ,1891除以12余数是7即为午 即1894年是甲午年 编辑本段其他相关 天干地支纪年法同时可纪年、月、日、时,分别称为“年柱、月柱、日柱、时柱”。此八个字就是俗称的“八字”。一个人的八字就是他出生时间的四柱记录。关于月、日、时的天干地支纪法,已使用不多,有兴趣的读者可去查阅有关资料。 十二地支与十二生肖对应,即子鼠、丑牛、寅虎、卯兔、辰龙、巳蛇、午马、未羊、申猴、酉鸡、戌狗、亥猪。

热点内容
华为手机怎么密码解锁 发布:2024-11-25 17:56:34 浏览:938
服务器管理员怎么编辑别人背包 发布:2024-11-25 17:55:45 浏览:930
plc编程T 发布:2024-11-25 17:55:02 浏览:268
数据库年薪 发布:2024-11-25 17:51:18 浏览:666
王者荣耀如何给账号设置密码 发布:2024-11-25 17:36:48 浏览:759
以巧克力为主写一篇脚本 发布:2024-11-25 17:16:59 浏览:335
数据库课时 发布:2024-11-25 16:57:50 浏览:451
dns服务器名称地址 发布:2024-11-25 16:57:49 浏览:932
如何给监控加访问密码 发布:2024-11-25 16:45:13 浏览:601
国外安卓音乐播放器哪个好 发布:2024-11-25 16:35:58 浏览:143