时间系统转换
时间系统是时空基准维护的重要内容,时间的表示方法有公历、儒略历、GPS时、世界时等多种方式,不同时间系统的转换是时间系统统一、方便计算的基础内容。
一、数据文件读取
编写程序读取“时间数据.txt”文件,数据内容和格式如表1所示。
表1 数据文件内容
数据内容 | 数据格式 |
2016 12 31 1 15 0.00001
2017 1 1 7 9 0.0 2017 6 27 18 0 0.0 2017 6 27 18 30 58.34510 |
年(Y) 月(M) 日(D) 时(H) 分(N) 秒(S) |
二、算法实现
- 公历时间转换为儒略日格式(15分)。
由公历的年(Y)、月(M)、日(D)、时(H,世界时的小时数)、分(N)、秒(S)计算儒略日(JD)的计算方法为:
(1)
- 儒略日转公历时
由儒略日(JD)转换为公历的年(Y)、月(M)、日(D)、时(h,世界时的小时数)、分(N)、秒(S)的计算方法:
(2)
式中,int是取整操作,a、b、c、d、e的计算方法为:
(3)
(3)年积日计算
年积日是仅在一年中使用的连续计时法,每年1月1日为第1日,2月1日为第2日,依次类推。
(4)计算“三天打鱼两天晒网”。
设从2016年1月1日开始三天打鱼两天晒网,计算指定时间是在打鱼还是在晒网。
三、计算结果报告
编程输出计算结果。
四、参考答案
——-JD———–
2457753.55208
2457754.79792
2457932.25000
2457932.27151
——-公历(年 月 日 时:分:秒———-
2016 12 31 01:15:00.000010
2017 01 01 07:09:00.000000
2017 06 27 18:00:00.000000
2017 06 27 18:30:58.345100
——-年积日———-
366
1
178
178
——-三天打鱼两天晒网———-
2016 12 31,打鱼日
2017 01 01,打鱼日
2017 06 27,晒网日
2017 06 27,晒网日
程序运行界面如图1所示,用以显示JD、公历、年积日、以及“三天打鱼两天晒网”计算结果。
图1 用户界面示例