本帖最后由 七秩龄童 于 2015-12-4 14:08 编辑
【儒略日之】年内序日数算法 (所标日期属本年内的第几天公式求法?) 史 纪 年内序日实际可分为三项内容,一是所求月份的天数,二是所求月份前整月数的天数,三是当年2月份不闰扣2天、或当闰扣1天的情形,分述如下: 1、若所求日期在M月D日,便有M月的N1天数为本年积日数内容,故如求某月M 月N1 =27日共积天数,首先含本月积日天数N1 = D = 27; 2、月份零天前整月份的天数N2,可由下式算之: N2 = INT(275M/9)- 30 (天) 式中INT(X)示只取数“X”下整数值,如:INT(5.02) = 5,等,注意:为便于“构造”算式,其1、3、5、7、8、10、12月按月30天,2月份则按月30天设计;于是,按所求月份 M 可由下表取数: 所求M月D日零天前整月(2月按30天算)天数N2 算天表 3、以上结果,是令2月为30天设计的,实际遇闰年2月29天,平年28天,故应于公式中用下式减去该减的天数: N 3= -K •INT[(M+9)/12]: 式中平年K=2,N3= -2 , 闰年K=1,N3= -1 , 由本式,当月份M=3至12月,整除式均得1,即平年减2,闰年减1天,如所标示日期在1、2月,由N3=0。 由以上巧妙设计,综合之,可得所求标示日期在本年内的另星积日天数: N = N 1+ N 2+ N 3= D 1+ INT(275M/9)- 30-K •INT[(M+9)/12] = INT(275M/9)-K •INT[(M+9)/12] +D 1- 30. 例算: 例算1:求1978年11月14日年内另天天数: 本年平年 K=2,M = 11, D 1 = 14, K = 2代入,得 N = 318
例算2:求 1988年4月22日年内另天天数 本年闰年 K=1, M = 4, D 1 = 22,K = 1代入,得 N = 113。 例算 3:求1921年7月1日年内另天天数?解:1921年平年,2月28天,按上述算式程式用心算,闰年:- 2,7月1日:+1天;因 1、3 、5月31天,6个整月:+ 183天,D = -2+1+183 =182(天) 年内序日数公式能够准确求出本年所求日期的积日天数,其意义除提供算式外,主要意义是提供计算方法,为心算提供思路,若手头带着纸笔、算盘或计算器,用心算方法求年内积日天数,简明易学。 |