看板 Programming 關於我們 聯絡資訊
※ 引述《xanlich (...)》之銘言: : 標題: [問題] 如何算出week of month? : 時間: Thu Feb 25 10:28:40 2010 : : : 請問一下, 大部份時間元件沒有week of month(現在是該月的第幾週) : : 如果要使用, 怎麼樣才算的出來? 假設知道今天是幾號和星期幾 : : 號為1~31 星期一~星期日為1~7, 謝謝 : : -- : ※ 發信站: 批踢踢實業坊(ptt.cc) : ◆ From: 122.116.45.34 : → adrianshum:你每週是以星期一還是星期日當開始? 61.238.156.189 02/25 12:07 : → adrianshum:直覺去想, 靠日期幾和幾號, 就能推出當 61.238.156.189 02/25 12:13 : → adrianshum:月一號是星期幾. 然後當月每天是第幾個 61.238.156.189 02/25 12:13 : → adrianshum:星期不就是 日期+1號星期幾 / 7 嗎? 61.238.156.189 02/25 12:14 我想了一想, 可以再簡化一點, 其實可以這樣算 (假設一星期是 日至六, 以 0-6 代表) 某日(d) 是星期幾 (w), 它是在第幾個星期就是 ( (d + 7 - w) / 7 ) + 1 要是 w > d 就是 第 0 個星期 比如 2010-1-3 是星期日 (3 + 7 - 0) / 7 + 1 = 10/7 + 1 = 1 + 1 = 第 2 個星期 2010-1-1 是星期 5, (1 + 7 -5) /7 + 1 = 3/7 + 1 = 0 + 1 = 第 1 個星期 2010-1-25 是星期 1, (25 + 7 - 1) /7 + 1 = 31/7 + 1 = 4 + 1 = 第 5 個星期 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.238.156.189 ※ 編輯: adrianshum 來自: 61.238.156.189 (02/25 12:49)
xanlich:感謝,不過你式子好像錯了,2010-2-27帶進去 123.192.92.200 02/27 15:08
xanlich:結果不對,我後來自己有推導出一個式子,但 123.192.92.200 02/27 15:09
xanlich:程式現在沒有,我先推出該月1日是星期幾,再 123.192.92.200 02/27 15:10
xanlich:推導目前是第幾週,一星期是一至日,出來結 123.192.92.200 02/27 15:11
xanlich:果是1-5, 所以你0-6也不對 @@ 123.192.92.200 02/27 15:11
xanlich:啊, 我最後一句會錯意 123.192.92.200 02/27 15:13
adrianshum:XD 好像真的有點錯了,不過應該差不多 218.250.0.44 03/01 00:39
adrianshum:才對... :P 應該可以歸納到類似的簡單 218.250.0.44 03/01 00:40
adrianshum:算式才是 :P 218.250.0.44 03/01 00:40