![]() |
||
Golden Member
![]() ![]() ![]() ![]() 加入日期: Nov 2003 您的住址: 銀河-太陽系-地球-亞洲-中華民國
文章: 2,579
|
寫程式:找出每個月的第二個星期二
請問一下
找出每個月的第二個星期二 這種題目是算簡單還是很難呢? 例:輸人2015年2月 就顯示答案2015/2/10
__________________
☆★☆★☆★☆★☆★☆★☆★☆★☆★ |
|||||||
![]() |
![]() |
*停權中*
加入日期: Jul 2013
文章: 331
|
有的語言已經有現成或類似的 function 可用,如果會用,就不難
當然如果你要當成邏輯練習就或許要想一下 |
||
![]() |
![]() |
Senior Member
![]() ![]() ![]() 加入日期: Mar 2012 您的住址: 地球
文章: 1,303
|
讀取萬年曆資料,提取、分析
或者,是先把100年的每個月第二個星期二算出來做成資料庫 |
![]() |
![]() |
Golden Member
![]() ![]() ![]() ![]() 加入日期: Nov 2003 您的住址: 銀河-太陽系-地球-亞洲-中華民國
文章: 2,579
|
引用:
謝謝你的回答 請問哪些程式語言有呢? JAVA或VB有嗎 謝謝 引用:
這好像有點複雜 謝謝你的回答
__________________
☆★☆★☆★☆★☆★☆★☆★☆★☆★ 此文章於 2015-05-23 11:24 AM 被 =風= 編輯. |
||
![]() |
![]() |
Basic Member
加入日期: Jan 2002 您的住址: 台中
文章: 10
|
|
![]() |
![]() |
Master Member
![]() ![]() ![]() ![]() 加入日期: Nov 2010
文章: 2,414
|
引用:
如果不管效能 你就用date函數從1號開始去try就好了(每個語言應該都有) 然後就用一個變數當counter 禮拜二出現第兩次時就show那天就好了 最多也只會try 14次而已(該月第一天是禮拜三)
__________________
新。弱弱的戰績 ![]() ![]() |
|
![]() |
![]() |
*停權中*
加入日期: Jul 2013
文章: 331
|
引用:
你可以查詢「DayOfWeek」,和你想要用的語言放在一起查 這個可以查某年某月某天是星期幾 有 function 的話應該找的到怎麼用,沒有的話應該也會有簡潔的語法可參考 然後你要怎麼做就看你自己了 此文章於 2015-05-23 11:34 AM 被 micall.lee 編輯. |
|
![]() |
![]() |
Golden Member
![]() ![]() ![]() ![]() 加入日期: Nov 2003 您的住址: 銀河-太陽系-地球-亞洲-中華民國
文章: 2,579
|
引用:
謝謝,有點不太好改 引用:
謝謝你的方法 引用:
這個logic 很好寫 謝謝
__________________
☆★☆★☆★☆★☆★☆★☆★☆★☆★ |
|||
![]() |
![]() |
*停權中*
加入日期: Nov 2013
文章: 21
|
php 寫法還蠻簡單的
$input="你輸入的年跟月"+"01";//年月日當月一號 $mysettime = maketime($input);//timestep $weekdata=date("N",$mysettime);//得到一號星期幾 再來就 7 個 if 判斷第二個星期二要加幾天 if($weekdata=1){echo "你輸入的年跟月"."08";} //一號星期一的話要加 8 天8號 if($weekdata=2){echo "你輸入的年跟月"."07";} //一號星期二的話要加 7 天 7 號 if($weekdata=3){echo "你輸入的年跟月"."13";} //一號星期三的話要加 13 天 13 號 if($weekdata=4){echo "你輸入的年跟月"."08";} //一號星期四的話要加 12 天 12 號 if($weekdata=5){echo "你輸入的年跟月"."08";} //一號星期五的話要加 11 天 11 號 if($weekdata=6){echo "你輸入的年跟月"."08";} //一號星期六的話要加 10 天 10 號 if($weekdata=7){echo "你輸入的年跟月"."08";} //一號星期日的話要加 9 天 9 號 PHP 的話大概這樣吧 好久沒寫東西不知道有沒有錯 此文章於 2015-05-23 11:46 AM 被 twdvdr 編輯. |
![]() |
![]() |
*停權中*
加入日期: Jan 2002 您的住址: 鳳形山下
文章: 159
|
C#憑直覺亂寫∼只管邏輯不管語法
Const Int t =2; DateTime d = DateTime.Parse(tbxDate.Text + "/01"); Int w =d.DayOfWeek; // 0 開始 (表示星期日) 到 6 (表示星期六) if (w >t) return d.Addday(14-(w-t)) else if (w <t) return d.Addday(t-w+7) else if (w==t) return d.Addday(7) 我應該不是在幫人寫作業吧 XDD |
![]() |
![]() |