zoukankan      html  css  js  c++  java
  • 日期计算

    虽然已知日期2011年11月11日是星期五,但是为了方便我还是把2011年1月1日当做基础日期。至于2011年1月1日是星期几,电脑上面有的。。。

    思路:文字不如图来得形象。如下

    //已知2011年11月11日是星期五
    #include<iostream>
    using namespace std;
    
    int leap(int n)//判断闰年
    {
        if((n%4==0&&n%100!=0)||n%400==0)
            return 1;
        return 0;
    }
    int getY(int Y)
    {
        int ans = 0;
        if(Y<2011)
        {
            for(int i=Y;i<2011;i++)
            {
                if(leap(i)==1)
                    ans += 366;
                else ans += 365;
            }
        }else{
            for(int i=2011;i<Y;i++)
            {
                if(leap(i)==1)
                    ans += 366;
                else ans += 365;
            }
        }
        return ans;
    }
    int getM(int Y,int M,int D)//month+day
    {
        int ans = 0;
        if(leap(Y)==1&&M>2) ans = 1;
        for(int i=1;i<M;i++)
        {
            switch(i)
            {
                case 1: ans+=31;break;
                case 2: ans+=28;break;
                case 3: ans+=31;break;
                case 4: ans+=30;break;
                case 5: ans+=31;break;
                case 6: ans+=30;break;
                case 7: ans+=31;break;
                case 8: ans+=31;break;
                case 9: ans+=30;break;
                case 10:ans+=31;break;
                case 11: ans+=30;break;
                case 12: ans+=31;break;
            }
        }
        return ans+D;
    }
    int main()
    {
        int Y,M,D;
        cin>>Y>>M>>D;
        int sum = getY(Y);
        int sum2 = getM(Y,M,D);
        if(Y<2011)
        {
            sum =sum - sum2+1;
            sum = sum%7;
            sum = (6-sum)%7;
        }else{
             sum = sum+ sum2-1;
             sum = sum%7;
             sum = (6+sum)%7;
        }
    
        if(sum==0)
            cout<<7<<endl;
        else cout<<sum<<endl;
        return 0;
    }
    
  • 相关阅读:
    iOS开发之JSON格式数据的生成与解析
    Xcode 怎么查看代码总行数
    iOS OC与JS的交互(JavaScriptCore实现)
    Webstorm设置代码提示
    iOS app性能优化的那些事
    pThread多线程demo
    更新UI放在主线程的原因
    iOS小知识点
    上传本地代码及更新代码到GitHub教程
    logstash安装配置
  • 原文地址:https://www.cnblogs.com/qie-wei/p/12094117.html
Copyright © 2011-2022 走看看