每日的生肖怎么推算?
这个问题简单与复杂其实就在于你怎么去想,如果你像计算物理题一样去算就很简单,如果你像算数学题目那样去算那就很麻烦。 先说简单算法,就是按每个生肖每一天都有三个人这个前提去算。比如今天是12月5日,子鼠对应的是123,丑牛对应的456……那么今天的十二生肖就是属鼠、属牛、属虎等等的12生肖都有人,所以这一天是平年闰年的问题都不大,只要你的算法能保证每一年每一天的12生肖都全就行了。
再来说详细一点,首先把12个月分成三段,每一段4个星座,分别是一二三,三四五,六七八这样。然后给每一个月份设定一个标志位(可以用1或者0表示),每个月的第一天设该月的第一个星座为标志位,每天设置两个标记位,0和1,这样每天就有四个不同组合,如今天是个星期天,那么就是0001,明天是星期一,那么就是0010……这样农历十一月有三十天的话就是1111,冬至那天是1110……这样就算一年的时间了,然后再换算成公历,加一天就好了。
这种算法只要保证了每年同一月份同一天同一时刻不重复就行,至于每月是否足30天或31天没有关系,只要年度总天数没差多少就行,因为地球公转时间是有差别的,这样的算法只是把每一天都当作平等的一天而已;当然你如果要求更高就可以按节气来计算,不过那样就更麻烦了。