cnCalc计算器论坛

 找回密码
 注册
搜索
查看: 4190|回复: 5

[TI-Nspire系列] 格里高利历施行后任意两天间隔计算

[复制链接]
发表于 2012-4-15 09:35:28 | 显示全部楼层 |阅读模式
计算器程序
程序名称: 日期间隔计算
平台: TI-Nspire 
系统/软件要求: TI-nspire with cas
版本号: 1.0
类型: 其他 
作者: luojiaweil
大小(K): 2.28
更新日期: 2012-04-15
描述: 计算格里高利历施行(1582年10月15日)后任意两天间隔
已知缺陷: -
源代码: 开源/部分开源
ti-nspire自带的日期计算只能支持1950-2050这100年间的计算。我根据苏宜编著的《天文学新概论》中给出的算法做了这个程序。之所以把时间限定在格里高利历施行后,是因为之前的儒略历没有“百年不闰,四百年又闰”的设计,而且格里高利历施行时为了赶上之前的差距,去掉了1582年10月5日-14日这10天。而且儒略历早期和现在的月份设计是不同的,现在的月份是屋大维于公元前8年制定的。由于如果考虑格里历之前的立法很麻烦又复杂,不考虑的话计算结果又没有意义,因此限定格里历施行以后到无穷远的未来(未来历法改变的话结果也是没有意义的)
程序分为3个部分:days为主程序,checkrn为判断闰年的函数,可以从儒略历施行(公元前45年)一直到无穷远,考虑到了儒略历和格里历的区别。需要注意的是“当时僧侣错误理解“隔三年设置一闰年”,以致每三年设置了一个闰年。故前45年前42年前39年前36年前33年前30年前27年前24年前21年前18年前15年前12年前9年是闰年,与儒略历实际日期误差有3天。奥古斯都为了纠正了以上闰年过多的错误,故取消前5年前1年4年3年的闰年,拟补累积误差的天数。此后按儒略历原来的设计每四年有一次闰年”(摘自维基百科)因此公元前的计算结果基本是无意义的。ifexist为判断日期是否存在的函数,可以从屋大维改变月份设置一直算到无穷远,考虑了格里历和儒略历的区别,同时考虑了施行儒略历时去掉的10天。
04-15-2012 Image001.jpg

两日间天数.tns

2.28 KB, 下载次数: 15, 下载积分: 金钱 -1

发表于 2012-4-15 11:54:56 | 显示全部楼层
实话说,ns有内置函数的。
发表于 2012-4-15 12:06:29 | 显示全部楼层
实话说,ns有内置函数的。
936854586 发表于 2012-4-15 11:54
ti-nspire自带的日期计算只能支持1950-2050这100年间的计算。



回帖不看帖...
发表于 2012-4-15 12:53:29 | 显示全部楼层
以前用dbd函数秒了w2f的一道noip的题目
发表于 2012-4-15 13:45:37 | 显示全部楼层
4# 第13号天使
普及组的水题……
题目是计算你生日后的第1w天
发表于 2012-4-15 21:35:58 | 显示全部楼层
4# 第13号天使


这不会是超梦吧?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|cnCalc计算器论坛

GMT+8, 2024-4-20 05:36 , Processed in 0.070510 second(s), 28 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表