JWorld@TW the best professional Java site in Taiwan
      註冊 | 登入 | 全文檢索 | 排行榜  

» JWorld@TW » .Net Framework  

按列印兼容模式列印這個話題 列印話題    把這個話題寄給朋友 寄給朋友    訂閱主題
reply to postflat modego to previous topicgo to next topic
本主題所含的標籤
無標籤
作者 Re:某天到某天共有幾個六,日 ? [Re:chanhouw]
wjtd





發文: 5
積分: 0
於 2005-11-29 18:13 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
我想到的方法是
先算出完整週(就是星期日~星期六每天都有的週)有幾個
再來就只剩下不完整的第一週和最後一週,再算出他們有沒有星期六或日就行了

以 2005/11 為例

 日  一  二  三  四  五  六
       1  2  3  4  5
 6  7  8  9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30

要算 11/01 ~ 11/30 有幾個星期六、日
首先算出有 3 週是完整的 ( 6 ~ 26 ),所以至少有 3 個六日
然後如果第一週是不完整,一定有星期六
最後一週若不完整,一定有星期日

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
using System;
 
public class Sample1
{
  public static void Main(string[] args)
  {
    int saturday = 0, sunday = 0, count, firstWeekCount, finalWeekCount;
    DateTime fromDate = new DateTime(2005, 11, 1);
    DateTime toDate = new DateTime(2005, 11, 30);
 
    // 第一週的天數
    if (fromDate.DayOfWeek != DayOfWeek.Sunday)
      firstWeekCount = 7 - (int)fromDate.DayOfWeek;
    else
      firstWeekCount = 0;
 
    // 最後一週的天數
    if (toDate.DayOfWeek != DayOfWeek.Saturday)
      finalWeekCount = (int)toDate.DayOfWeek + 1;
    else
      finalWeekCount = 0;
 
    // 計算總天數,頭尾都算,所以加 1
    count = toDate.Subtract(fromDate).Days + 1;
 
    // 完整週的總週數
    saturday = sunday = (count - firstWeekCount - finalWeekCount) / 7;
 
    if (firstWeekCount > 0)
      saturday++;
 
    if (finalWeekCount > 0)
      sunday++;
 
    Console.WriteLine("星期六 : " + saturday);
    Console.WriteLine("星期日 : " + sunday);
  }
}


reply to postreply to post
話題樹型展開
人氣 標題 作者 字數 發文時間
2718 某天到某天共有幾個六,日 ? chanhouw 72 2005-11-29 11:39
2580 Re:某天到某天共有幾個六,日 ? wjtd 1271 2005-11-29 18:13
» JWorld@TW »  .Net Framework

reply to postflat modego to previous topicgo to next topic
  已讀文章
  新的文章
  被刪除的文章
Jump to the top of page

JWorld@TW 本站商標資訊

Powered by Powerful JuteForum® Version Jute 1.5.8