万年历程序中十二生肖排列顺序及算法

有时我们做万年历程序时涉及十二生肖的排列顺序及相关算法问题,这里总结一下:

算法:
年份减3除以12,余数则是对应的十二生肖序号, 如果余数为0,序号计为12。然后根据以下口诀得到生肖:

一鼠二牛三虎四兔走,
舞龙六蛇七马八羊头。
九猴十鸡幺幺数狗狗。
十二金猪排列到最后。

按地支及生肖的口诀:
子鼠丑牛寅虎卯兔走,
辰龙巳蛇午马未羊头。
申猴酉鸡之后戍狗狗,
亥属金猪排列到最后。

注:以上口诀(也可说是十二生肖的顺口溜吧),是我读高中时瞎编的,不过至今仍记得,转载请注明出处 :)

还有一个关于十二生肖的顺口溜
(貌似儿歌,可教给小孩子的,嘿嘿!):

小老鼠,打头来,牛把蹄儿往上抬。
老虎回头一声吼,兔脚一蹬跑得快。
龙和蛇,尾巴甩,马啸羊儿大步迈。
小猴机灵蹦又跳,雄鸡一唱天下白。
狗儿跳,猪儿叫,老鼠接着跟上来。
十二动物转圈跑,一二三四按序排。

附:十二生肖属相年份对照表(农历1900-2103年)
鼠1900 牛1901 虎1902 兔1903 龙1904 蛇1905 马1906 羊1907 猴1908 鸡1909 狗1910 猪1911
鼠1912 牛1913 虎1914 兔1915 龙1916 蛇1917 马1918 羊1919 猴1920 鸡1921 狗1922 猪1923
鼠1924 牛1925 虎1926 兔1927 龙1928 蛇1929 马1930 羊1931 猴1932 鸡1933 狗1934 猪1935
鼠1936 牛1937 虎1938 兔1939 龙1940 蛇1941 马1942 羊1943 猴1944 鸡1945 狗1946 猪1947
鼠1948 牛1949 虎1950 兔1951 龙1952 蛇1953 马1954 羊1955 猴1956 鸡1957 狗1958 猪1959
鼠1960 牛1961 虎1962 兔1963 龙1964 蛇1965 马1966 羊1967 猴1968 鸡1969 狗1970 猪1971
鼠1972 牛1973 虎1974 兔1975 龙1976 蛇1977 马1978 羊1979 猴1980 鸡1981 狗1982 猪1983
鼠1984 牛1985 虎1986 兔1987 龙1988 蛇1989 马1990 羊1991 猴1992 鸡1993 狗1994 猪1995
鼠1996 牛1997 虎1998 兔1999 龙2000 蛇2001 马2002 羊2003 猴2004 鸡2005 狗2006 猪2007
鼠2008 牛2009 虎2010 兔2011 龙2012 蛇2013 马2014 羊2015 猴2016 鸡2017 狗2018 猪2019
鼠2020 牛2021 虎2022 兔2023 龙2024 蛇2025 马2026 羊2027 猴2028 鸡2029 狗2030 猪2031
鼠2032 牛2033 虎2034 兔2035 龙2036 蛇2037 马2038 羊2039 猴2040 鸡2041 狗2042 猪2043
鼠2044 牛2045 虎2046 兔2047 龙2048 蛇2049 马2050 羊2051 猴2052 鸡2053 狗2054 猪2055
鼠2056 牛2057 虎2058 兔2059 龙2060 蛇2061 马2062 羊2063 猴2064 鸡2065 狗2066 猪2067
鼠2068 牛2069 虎2070 兔2071 龙2072 蛇2073 马2074 羊2075 猴2076 鸡2077 狗2078 猪2079
鼠2080 牛2081 虎2082 兔2083 龙2084 蛇2085 马2086 羊2087 猴2088 鸡2089 狗2090 猪2091
鼠2092 牛2093 虎2094 兔2095 龙2096 蛇2097 马2098 羊2099 猴2100 鸡2101 狗2102 猪2103

如果你对这方面的诗词感兴趣,不妨再看看此文:
[图]十二生肖开运诗词 http://21cn.aqioo.com/article/13843,view.html

十二生肖与十二时辰:
    古人根据太阳升起的时间,将一昼夜区分为十二个时辰,用十二地支为代号,方便熟记。 中国用地支计时法,叫做十二时辰(“大时”),也就是我们现在所称的二十四“小时”。
    十二生肖是由十一种来自自然界的动物: 鼠、牛、虎、兔、蛇、马、羊、猴、鸡、狗和猪,还有传说中的龙所组成的。古人以这十二种动物的习性来为分配各个地支, 例如:老鼠是夜间活动的动物,因此以子时(午夜11时至1时)配合鼠,都和当时农业社会的生活起居作习息息相关。

生肖和时辰是如何相对应的呢?以下仅供参考:
子(鼠)午夜23时至1时:在一日中,子时一天的最后时刻,也是新一天的开始。
丑(牛)凌晨1时至3时:丑时指的是黎明前的黑暗阶段。据说是牛开始日出耕田的时刻。
寅(虎)凌晨3时至5时:在一日中, 天方大白之时,正是老虎开始活动的时刻。
卯(兔)清晨5时至7时:卯时是太阳已东升,开始放万丈光芒的时候。
辰(龙)清晨7时至9时:辰时太阳光热增强时刻,据说是群龙行西的时刻。
巳(蛇)上午9时至11时,巳时太阳光热更强了。
午(马)上午11时至下午13时,在一日中,阳光最为猛烈。
未(羊)下午13时至15时:在一日中, 未时是暑气将消之时。
申(猴)下午15时至17时:在一日中,申时的暑气已快过去了。
酉(鸡)下午17时至晚上19时:在一日中,酉时是夜晚将来临的时刻。
戍(狗)晚上19时至21时:在一日中,戌时正是黑夜扩散,华灯初上时分。
亥(猪)晚上21时至午夜23时:在一日中,亥时是一日将尽,要迈向明日之前时分。

两则小故事:
(1)为什么有属老鼠的,没有属猫的呢?
    你知道自己属什么吗?为什么有属老鼠的,没有属猫的呢?这里有个故事。很久很久以前,有一天,人们说:“我们要选十二种动物作为人的生肖,一年一种动物。”天下的动物有多少呀?怎么个选法呢?这样吧,定好一个日子,动物们来报名,就选先到的十二种动物为十二生肖。猫和老鼠是邻居,又是好朋友,它们都想去报名。猫说:“咱们得一早起来去报名,可是我爱睡懒觉,怎么办呢?”老鼠说:“别着急,别着急,你尽管睡你的大觉,我一醒来就去叫你,咱们一块儿去。”猫听了很高兴,说:“你真是我的好朋友,谢谢你了。”到了报名那天早晨,老鼠早就醒来了,可是它光想到自己的事,把好朋友猫的事给忘了。就自己去报名了。结果,老鼠被选上了。猫呢?因为睡懒觉,起床太迟,等它赶到时,十二种动物已被选定了。 猫没有被选上,就生老鼠的气,怪老鼠没有叫它,从这以后,猫见了老鼠就要吃它,老鼠就只好拼命地逃。一直到现在还是这样。      
(2)怎么让小小的老鼠排在第一名呢?
    十二生肖的顺序是:鼠、牛、虎、兔、龙、蛇、马、羊、猴、鸡、狗、猪。怎么让小小的老鼠排在第一名呢?这里也有个故事。报名那天,老鼠起得很早,牛也起得很早。它们在路上碰到了。牛个头大,迈的步子也大,老鼠个头小,迈得步子也小,老鼠跑得上气不接下气,才刚刚跟上牛。老鼠心里想:路还远着呢,我快跑不动了,这可怎么办?它脑子一动,想出个主意来,就对牛说:“牛兄弟,牛兄弟,我来给你唱个歌。”牛说:“好啊,你唱吧---咦,你怎么不唱呀?”老鼠说:“我在唱哩,你怎么没听见?哦,我的嗓们太细了,你没听见。这样吧,让我骑在你的脖子上,唱起歌来,你就听见了。”牛说:“行罗,行罗!”老鼠就沿着牛腿子一直爬上了牛脖子,让牛驮着它走,可舒服了。它摇头晃脑的,真的唱起歌来:牛兄弟,牛兄弟,过小河,爬山坡,驾,驾,快点儿罗!牛一听,乐了,撒开四条腿使劲跑,跑到报名的地方一看,谁也没来,高兴得昂昂地叫起来:“我是第一名,我是第一名!”牛还没吧话说完,老鼠从牛脖子上一蹦,蹦到地上,吱溜一蹿,蹿到牛前面去了。结果是老鼠得了第一名,牛得了第二名,所以,在十二生肖里,小小的老鼠给排在最前面了。

你可能感兴趣的:(算法,生活,活动,农业,2010)