2012-09-25 69 views

回答

2

@ElYusubov - 接近但不完全正確。

作爲起點,該部門必須是七(一週中的天數)。但是,time.day會在1到31之間給出一個月份,所以首先您需要在除法之前減去一個,然後再加一個。任何一個月的前八天之時......

Day number (Day# - 1)/7 Week# 
---------- -------------- ----- 
     1  0.0    1 
     2  0.14   1 
     3  0.29   1 
     4  0.43   1 
     5  0.57   1 
     6  0.71   1 
     7  0.86   1 
     8  1    2 

無論一天的星期幾time.day給與,每週#指示是否它是第一,第二等某一天的the-周。但你希望星期天來到

星期六給出了一個工作日 - 0到6,其中0表示星期日。那麼在即將到來的星期天有多少天?嗯,這取決於你的「即將」的定義,但如果你今天排除==星期天,你基本上從7

Weekday today  Days until next Sunday 
-------------  ---------------------- 
0 (Sun)   7 
1 (Mon)   6 
2 (Tue)   5 
3 (Wed)   4 
4 (Thu)   3 
5 (Fri)   2 
6 (Sat)   1 

減去今天平日如果允許「現身」星期日是今天,那麼你做同樣的事情,但用零代替七。您可以執行條件檢查,也可以使用模/餘數運算符。

無論如何,一旦您知道即將到來的星期日將會有多少天,您可以計算出該日期的值(將這些天添加到今天的日期),然後確定該日期的月份中的日期值,而不是今天第一種方法(減1,除以7,加1)。

相關詞彙...

Date.wday  0 to 6 (0 = sunday) 
Date.day   1 to 31 

我不會嘗試提供的代碼,因爲我不知道紅寶石。

相關問題