
跟经度没有关系,只需要纬度即可,同一纬度上的地点一天都要转一圈的。
程序我不会,但可以给出一个公式
某地日出时间=12-12*arcCos(tg(arcsin(sinAsinB))*tgD)/π
正午一般来说都是12点
日落时间=12+12*arcCos(tg(arcsin(sinAsinB))*tgD)/π
式中:∠A为黄赤交角,∠B=π * 当前天数 / 半年天数(冬夏不同),∠D为当地纬度
严格地说,这个公式也不是灰肠精准的,因为其计算的是真太阳时,与日常钟表使用的平太阳时之间,一年里前后最大的误差可能有半个小时,而且这是根据晨昏线计算的,没有考虑大气可以折射的因素