黑马程序员技术交流社区

标题: 看博客-基姆拉尔森计算公式(和卖火柴版主讨论问题时发... [打印本页]

作者: 电脑大牛    时间: 2014-2-6 22:53
标题: 看博客-基姆拉尔森计算公式(和卖火柴版主讨论问题时发...
主要内容:计算今天是星期几?
#region 根据年月日计算星期几(Label2.Text=CaculateWeekDay(2004,12,9);)
        
/// <summary>
        /// 根据年月日计算星期几(Label2.Text=CaculateWeekDay(2004,12,9);)
        /// </summary>
        /// <param name="y">年</param>
        /// <param name="m">月</param>
        /// <param name="d">日</param>
        /// <returns></returns>

        public static string CaculateWeekDay(int y,int m, int d)
        
{
            if(m==1) m=13;
            if(m==2) m=14;
            int week=(d+2*m+3*(m+1)/5+y+y/4-y/100+y/400)%7+1;
            string weekstr="";
            switch(week)
            {
                case 1: weekstr="星期一"; break;
                case 2: weekstr="星期二"; break;
                case 3: weekstr="星期三"; break;
                case 4: weekstr="星期四"; break;
                case 5: weekstr="星期五"; break;
                case 6: weekstr="星期六"; break;
                case 7: weekstr="星期日"; break;
            }

            return weekstr;
        }

        
#endregion
博客地址:http://blog.csdn.net/zhongzhengfeng/article/details/3583156
作者: 李稳023    时间: 2014-2-7 17:07
  1. int fun_change(int year, int month, int day)

  2. {

  3. if(month == 1 | month == 2)

  4. {

  5. month += 12;

  6. --year;

  7. }

  8. int week = -1;

  9. week = (day + 2 * month + 3 * (month + 1) / 5 + year + year / 4 -year / 100 +year / 400) % 7 + 1;

  10. return week; // 输出-1为错误

  11. }
复制代码
刚刚去搜索了一下,吉姆拉尔森的计算公式,在该百度百科下看到了有改良算法,版主大大,这个算法是需要死记硬背吗?我这榆木脑袋不知道怎么计算这个公式




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2