我有兩個日期字符串(dd-mm-yyyy)。 如何獲得這兩個日期之間的隨機日期?熱得到隨機日期範圍
3
A
回答
3
您可以將日期轉換爲Unix時間戳。隨機選取兩個時間戳之間的時間戳並將其轉換回日期。
0
變換的日期到3個整數:D1 = DD,M1 =毫米,Y1 = YYYY,同樣與D2,M2,Y2
然後,假設你知道如何生成隨機數(http://www.cprogramming.com/tutorial/random.html),生成一y1和y2之間的隨機數,它將作爲年份。然後,dd可以在1到28之間隨機生成,mm在1到12之間。這會將所有日期限制爲最大28。您可以先隨機生成月份,然後使用表格查找每個月有多少天(如果您考慮這個問題,您甚至不需要一張表),只是一種檢測閏年的方法,天)。
要生成a和b之間的隨機INT,你可以使用:
int random = a + rand() % (b - a + 1);
您可以擴展此爲日期在哪裏工作Y1 = Y2,甚至M1 = M2,以及只用一些額外的條件
1
將日期轉換爲固定數字,例如Julian值(稱爲J1和J2)。從0 < = N < = J2-j1生成一個「隨機」數字。然後將J1 + N從Julian轉換回日期。
0
使用類型和函數標準庫中time.h中:
http://en.wikipedia.org/wiki/Time.h
了部分字符串轉換爲整數,然後將其換算成time_t的。在計算出它們之間的隨機值後,可以用另一種方式將結果存入字符串。
相關問題
- 1. 隨機日期範圍選擇
- 2. 得到隨機BigInteger範圍(x,y)
- 3. 如何選擇日期範圍內的隨機日期AS3
- 4. 在日期範圍範圍
- 5. 範圍日期,直到日期+周
- 6. 如何在mysql的範圍內獲得隨機日期(不是時間)
- 7. 日期範圍
- 8. 日期範圍
- 9. 日期範圍
- 10. 在特定範圍內選擇一個隨機日期
- 11. SQLite - 選擇範圍內的隨機日期時間
- 12. 在numpy範圍內生成隨機日期
- 13. 到達日期範圍VBA
- 14. Mysql在給定的日期時間範圍中插入隨機日期時間
- 15. 如何將現有日期更新爲範圍內的隨機日期?
- 16. 隨機日期時間在給定的日期時間範圍內
- 17. 日期範圍的日期範圍之間的任何日期
- 18. MySQL的 - 取得一個日期範圍
- 19. Matlab隨機數範圍
- 20. 隨機位在範圍
- 21. VueJS日期範圍
- 22. 從日期範圍
- 23. Smarty - 日期範圍
- 24. 與日期範圍
- 25. 從日期範圍
- 26. SQL日期範圍
- 27. CGridview日期範圍
- 28. SOLR日期範圍
- 29. SQL日期範圍
- 30. 與日期範圍
...並剝離時間部分。 – Joey 2010-03-03 15:05:36
我如何將日期轉換爲unix時間戳? – amitlicht 2010-03-03 15:08:15
看看函數strptime – Sjoerd 2010-03-03 15:19:17