close

 

 

 

 

同事突然丟了一張圖給我

 

 

 

來=____= 小學數學呀.............

是我脫離小學太久了,

才不知道原來現在小朋友的考卷這麼的....需要思考呀=_=||

而裡面有一題,我真的想不到他們要怎麼教

 

 

 

於是,我上網查了怎麼去算,

查完後,我更覺得小朋友更強了..................(還是我太弱了)
 

 

判斷日期的公式:
 ( 基姆拉爾森計算 :  W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7   )

然後西元轉民國 ( -1911 )

反之民國轉西元 ( +1911)

--------------------------------------------------------------

看完這個兩個公式後,我就覺得更屁了..... 小一生會mod ...

好吧....我真的老了........... ( 如果不小心有老師來逛我的blog,拜託,跟我講講你怎麼教的 )

 

 

 

#include <iostream>
using namespace std;

void CaculationDay(int y, int m, int d)
{
    if (m == 1 || m == 2)
    {
        m += 12;
        y--;
    }
    int iWeek = (d + 2 * m + 3 * (m + 1) / 5 + y + y / 4 - y / 100 + y / 400) % 7;
    switch (iWeek)
    {
        case 0:cout << "Monday"        << endl; break;
        case 1:cout << "Tuesday"    << endl; break;
        case 2:cout << "Wednesday"    << endl; break;
        case 3:cout << "Thursday"    << endl; break;
        case 4:cout << "Friday"        << endl; break;
        case 5:cout << "Saturday"    << endl; break;
        case 6:cout << "Sunday"        << endl; break;
    }
}

void main()
{
    int year, month, day;
    while (1)
    {
        cout << "Enter Year(Must > 1900) , Month , day (Exit:0)" << endl;
        cin >> year >> month >> day;
        if (year == 0 || month == 0 || day == 0)
            break;
        if (year <= 1900)
            year += 1911;
        CaculationDay(year, month, day);

    }

}

arrow
arrow
    文章標籤
    C C++
    全站熱搜
    創作者介紹
    創作者 Eric 的頭像
    Eric

    一個小小工程師的心情抒發天地

    Eric 發表在 痞客邦 留言(0) 人氣()