線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1071
推到 Plurk!
推到 Facebook!

請問一個月中有多少天是星期幾?

答題得分者是:richtop
irvinehing
初階會員


發表:77
回覆:79
積分:31
註冊:2003-11-12

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-06-28 15:26:16 IP:210.186.xxx.xxx 未訂閱
void __fastcall TForm1::Button1Click(TObject *Sender)
{
        int CurWeek = DayOfWeek(DateTimePicker1->Date) - 1;
        int EndDay = DayOf(EndOfTheMonth(DateTimePicker1->Date));
        int Week = 0, Count = 0;            for(int i = 0; i < EndDay; i  )
        {
                Week = CurWeek - (DayOfWeek(StartOfTheMonth(DateTimePicker1->Date)   i) - 1);
                if(Week == 0)
                {
                        Count  ;
                }
        }            Caption = Count;
}
請問有其他辦法找出一個月內有幾天是星期日或一或二或三或四或五或六?
richtop
資深會員


發表:122
回覆:646
積分:468
註冊:2003-06-10

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-06-29 00:32:49 IP:211.76.xxx.xxx 未訂閱
irvinehing 您好:    假設該月有 m 天,星期一是該月 y 號,則該月共有 (m-y)/7 + 1 個星期一。餘請類推!
irvinehing
初階會員


發表:77
回覆:79
積分:31
註冊:2003-11-12

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-06-29 10:33:32 IP:210.186.xxx.xxx 未訂閱
謝謝你的方法,至少不用迴圈跑30次左右。 以下是我寫的程式碼:    
void __fastcall TForm1::BitBtn1Click(TObject *Sender)
{
        int LastDay = DayOf(EndOfTheMonth(DateTimePicker1->Date));
        int FirstWeek = DayOfWeek(StartOfTheMonth(DateTimePicker1->Date)) - 1;
        int NowWeek = DayOfWeek(DateTimePicker1->Date) - 1;
        int Week = NowWeek - FirstWeek;            if(Week == 0)
        {
                Week = 1;
        }
        else if(Week > 0)
        {
                Week = 1   Week;
        }
        else
        {
                Week = 1   (7 - abs(Week));
        }            ShowMessage(((LastDay - Week) / 7 )   1);
}
系統時間:2024-06-27 2:45:41
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!