我正在嘗試將6位數字轉換爲星期幾。例如,我希望將「150102」轉換爲星期五「星期五」爲「2015年」,「01」爲月份,「02」爲當天將6位數字轉換爲星期幾(python)
注意我想在不導入任何時間的功能和使用Python的語言。
我正在嘗試將6位數字轉換爲星期幾。例如,我希望將「150102」轉換爲星期五「星期五」爲「2015年」,「01」爲月份,「02」爲當天將6位數字轉換爲星期幾(python)
注意我想在不導入任何時間的功能和使用Python的語言。
那麼,從你的評論來看,這是一個任務(這意味着它應該被標記爲這樣),所以我恐怕我的解決方案將是模糊的,但提供一些指導在一個(讀,可能不是最好的)解決方案。
首先,你想有一些東西,拆分給串入年/月/日。
public class Date {
private int year, month, date;
public Date(final String given) {
// TODO - Extract year/month/date.
// Validate year is supported, month exists and date
// exists in month...
}
}
接下來,你會(可能)需要一些你知道工作日的固定點(比如2000年1月1日;星期六)。
然後使用您在年/閏年,每月等日期的知識來查找多少天,因爲當日提供的論點是。
static int daysSinceKnown(Date date) {
// TODO - How many years since, how many of those were leap-years, etc.
}
最後,模塊化算術可以給你從函數返回的星期幾。 (具體來說,看看這個值mod 7
(%7
)會給你一個數字0-6
[負數不會很好地工作,但你可以在驗證一年的時候捕捉到這一點],你可以把它解釋爲一週中的某一天。)
所以我不認爲閏年是必要的,因爲我們只是使用2015年。此外,是否有可能轉換這成python?我正在努力閱讀這種語言 – CSCdummie
公平的閏年。我相信它是;但恐怕不是我(從未看過python)。說實話,這裏沒有實際的實現代碼,只是佔位符來幫助解釋流程,所以它不應該太難轉換(除了可能使'Date'類3方法,返回年/月/日期)。 – user2478398
到目前爲止,你有什麼嘗試/得到了什麼?爲什麼你不想導入任何時間函數(當涉及日期/時間工作時,有很多細微差別,如果沒有專門的API,不愉快)?什麼(具體)你堅持? – user2478398
您是在尋找適合您的算法,還是隻是一般的想法和需要考慮的事情。正如@ user2478398所提到的,計算時間時有很多細節。 –
我們在課堂上沒有任何時間功能,所以我們不能使用它們。我無法將6位數字轉換爲工作日 – CSCdummie