//C# code
public string GetAtomFromBirthday(DateTime birthday)
{
float birthdayF = 0.00F;
if (birthday.Month == 1 && birthday.Day < 20)
{
birthdayF = float.Parse(string.Format("13.{0}", birthday.Day));
}
else
{
birthdayF = float.Parse(string.Format("{0}.{1}", birthday.Month, birthday.Day));
}
float[] atomBound ={ 1.20F, 2.20F, 3.21F, 4.21F, 5.21F, 6.22F, 7.23F, 8.23F, 9.23F, 10.23F, 11.21F, 12.22F, 13.20F };
string[] atoms = { "水瓶座", "双鱼座", "白羊座", "金牛座", "双子座", "巨蟹座", "狮子座", "处女座", "天秤座", "天蝎座", "射手座", "魔羯座" };
string ret = "外星人啊。";
for (int i = 0; i < atomBound.Length - 1; i++)
{
if (atomBound[i] birthdayF)
{
ret = atoms[i];
break;
}
}
return ret;
}
//调用
String s = GetAtomFromBirthday(DateTime.Now);
#region <<获取星座>>
/// <summary>
/// 获取用户的星座
/// 星座是按阳历(公历)日期划分的,
/// 首先你得知道你的阳历出生日期。
/// </summary>
/// <param name="birthyear">出生年月</param>
/// <returns></returns>
public static string GetConstellation(DateTime birthyear)
{
//所有数组索引从1开始 到12结束
string[] Lunar = new string[]{"XO", "水瓶座", "双鱼座", "白羊座",
"金牛座", "双子座","巨蟹座",
"狮子座","处女座", "天秤座",
"天蝎座","射手座", "魔羯座"};
int month = birthyear.Month;
int day = birthyear.Day;
int[] ArrDate = new int[13] { 0, 21, 21, 21, 21, 22, 23, 24, 24, 24, 24, 23, 22 };
if (day < ArrDate[month])
{
//一月
if (month == 1)
{
return Lunar[12];
}
else
{
return Lunar[month - 1];
}
}
return Lunar[month];
}
#endregion