I used to eat regularly at a Chinese restaurant with Zodiac placemats describing the characteristics of people based on their birth year. For example, if you're born in 1984, 1996, 2008, etc. (the signs repeat over a twelve year cycle), you're a Rat, "ambitious yet honest . . . prone to spend freely." Since I usually eat with people around my age, we all end up being the same one or two Zodiac signs-clearly birth months work better to stimulate conversation! I saw one of these placemats again recently and noticed that the years only go back to 1936. The placemat advises "If born before 1936, add 12 to the year you were born to find your year." Of course, if you're born before 1924, this doesn't work either. How frustrating: if I have a dream dinner at a Chinese restaurant with some long-dead luminary, I'd like to calculate their Zodiac sign.
Here's an algorithm that works. A person is assigned a sign based on their Western birthyear. You can see the assignments here. This probably should correspond to traditional Chinese years, which don't start on Jan. 1, but I'm going by the placemat. 12 goes into 100 8 times with a remainder of 4; 12 divides 300 evenly. So if a person born in 1948 is a Rat, a person born in 2048 is 4 signs ahead, a Dragon. 1900 is a Rat, so 1800 is a Monkey. This makes for a very convenient calculation. Assign the Zodiac signs to numbers so that Monkey = 0, Cock = 1, Dog = 2, Boar = 3, Rat = 4, Ox = 5, Tiger = 6, Rabbit = 7, Dragon = 8, Snake = 9, Horse = 10, Sheep = 11. Take the last two digits of the birthyear + the remaining digits of the birthyear (mod 3) * 4, then take this mod 12 to get the Zodiac sign.
So when I'm talking with Albert Einstein, born 1879-79 + 0 (mod 12) = 7-I'll remark "Oh, you're a Rabbit: affectionate . . . and you seek peace through your life" (true, given his affairs and his anti-proliferation work).