<input id=nHao type=hidden
value="焉逢摄提格,太初元年。
端蒙单阏,太初二年。
游兆执徐,太初三年。
强梧大荒落,太初四年。
徒维敦牂,天汉元年。
祝犁协洽,天汉二年。
商横涒滩,天汉三年。
昭阳作鄂,天汉四年。
横艾淹茂,太始元年。
尚章大渊献,太始二年。
焉逢困敦,太始三年。
端蒙赤奋若,太始四年。
游兆摄提格,征和元年。
强梧单阏,征和二年。
徒维执徐,征和三年。
祝犁大芒落,征和四年。
商横敦牂,后元元年。
昭阳汁洽,后元二年。
横艾涒滩,始元元年。
尚章作噩,始元二年。
焉逢淹茂,始元三年。
端蒙大渊献,始元四年。
游兆困敦,始元五年。
强梧赤奋若,始元六年。
徒维摄提格,元凤元年。
祝犁单阏,元凤二年。
商横执徐,元凤三年。
昭阳大荒落,元凤四年。
横艾敦牂,元凤五年。
尚章汁洽,元凤六年。
焉逢涒滩,元平元年。
端蒙作噩,本始元年。
游兆阉茂,本始二年。
强梧大渊献,本始三年。
徒维困敦,本始四年。
祝犁赤奋若,地节元年。
商横摄提格,地节二年。
昭阳单阏,地节三年。
横艾执徐,地节四年。
尚章大荒落,元康元年。
焉逢敦牂,元康二年。
端蒙协洽,元康三年。
游兆涒滩,元康四年。
强梧作噩,神雀元年。
徒维淹茂,神雀二年。
祝犁大渊献,神雀三年。
商横困敦,神雀四年。
昭阳赤奋若,五凤元年。
横艾摄提格,五凤二年。
尚章单阏,五凤三年。
焉逢执徐,五凤四年。
端蒙大荒落,甘露元年。
游兆敦牂,甘露二年。
强梧协洽,甘露三年。
徒维涒滩,甘露四年。
祝犁作噩,黄龙元年。
商横淹茂,初元元年。
昭阳大渊献,初元二年。
横艾困敦,初元三年。
尚章赤奋若,初元四年。
焉逢摄提格,初元五年。
端蒙单阏,永光元年。
游兆执徐,永光二年。
强梧大荒落,永光三年。
徒维敦牂,永光四年。
祝犁协洽,永光五年。
商横涒滩,建昭元年。
昭阳作噩,建昭二年。
横艾阉茂,建昭三年。
尚章大渊献,建昭四年。
焉逢困敦,建昭五年。
端蒙赤奋若,竟宁元年。
游兆摄提格,建始元年。
强梧单阏,建始二年。
徒维执徐,建始三年。
祝犁大荒落,建始四年。">
<script language.javascript>
var nh = nHao.value;
nh = nh.split('\r\n'); //年号
var Q=[], S=[]; //气朔表
var kq = 1461/96; //气时间间距365.25/24;
var ks = 27759/940; //朔时间间距29+499/940;
function Qda(k){ return Math.floor(k*kq+0.1/96 ); } //计算第k个气
function Sda(k){ return Math.floor(k*ks+0.1/940); } //计算第k个朔
function calc(y){
var i,j,n;
//气日计算
n = y*24; //气起算序数
for(i=0;i<24;i++) //24节气
Q[i] = Qda(n+i);
//朔日计算
n = Math.floor(Q[0]/ks+0.5); //朔起算序数
if(Sda(n)>Q[0]) n--;
for(i=0;i<14;i++) //14朔
S[i] = Sda(n+i);
//排历
var nun,dx,zq,dz,s;
dz = (((y*24*kq)%1)*24).toFixed(3);
s = nh[y]
+ y+'年,积'+n+'月。'
+ '冬至'+dz+'时<br>'
+ '月份,月首积日,本月天数,中气<br>';
for(i=j=0;i<13&&j<24;i++,j+=2){
if(S[i+1]<=Q[j]) nun = '闰', zq = '-', j-=2; //闰月
else nun = '', zq = Q[j]-S[i]+1;
dx = S[i+1]-S[i]; //本月天数
s += ((j/2+10)%12+1)+'月 '+ S[i]+' '+dx+' '+zq+nun+'<br>';
}
//输出
document.write(s);
}
calc(0); //计算第1年
calc(2); //计算第3年
</script>