การคำนวณปฏิทิน150ปี
อยากไดวิธีการคำนวณครับ ท่านใดพอมีความรู้บ้าง ช่วยส่งเสริมหน่อย :D
|
ก่อนอื่นต้องแยกให้ออกก่อนครับ ว่าปีใดมี 365 วัน ปีใดมี 366 วัน
ปีที่มี 366 วัน (อธิกสุรทิน หรือ Leap Year) หากตรวจสอบจากปี คศ. คือปีที่
ถูกต้องในช่วงปี คศ. 2001 - 2339 เงื่อนไขคือ
\[ \left(Year + \left\lfloor \frac{Year - 1}{4} \right\rfloor - \left\lfloor \frac{Year - 1}{100} \right\rfloor + \left\lfloor \frac{Year-1}{400} \right\rfloor \right) \bmod 7 \]โดยหากได้ค่าเป็น 0 = อาทิตย์ , 1 = จันทร์ , 2 = อังคาร , 3 = พุธ , 4 = พฤหัสบดี , 5 = ศุกร์ , 6 = เสาร์ และเช่นเดียวกัน เวลานำไปเขียนเป็นโปรแกรม หรือเล่นทายวันจากวันที่ในใจ ในช่วงปี คศ. บางช่วง ไม่จำเป็นต้องใช้สูตรครบถ้วน (มันกินแรง CPU เกินไป) เท่าที่พี่เคยตรวจสอบมาเป็นดังนี้ ถูกต้องในช่วงปี คศ. 2001 - 2400 สูตรคือ \[ \left(Year + \left\lfloor \frac{Year - 1}{4} \right\rfloor - \left\lfloor \frac{Year - 1}{100} \right\rfloor + 5 \right) \bmod 7 \]ถูกต้องในช่วงปี คศ. 1901 - 2100 สูตรคือ \[ \left(Year + \left\lfloor \frac{Year - 1}{4} \right\rfloor + 6 \right) \bmod 7 \] หลักๆก็มีแค่นี้ครับ ที่เหลือคำนวณเองได้ไม่ยากแล้ว ส่วนปฏิทินจันทรคติไม่เคยศึกษาครับ (โปรดอย่าถาม :p ) |
รู้สูตรนี้เราก็ไม่ต้องแปลกใจนักว่า จะพัฒนาไปเล่นคิดในใจให้เพื่อนแปลกใจได้อย่างไง. (หัวข้อของ 100 ปี พี่ลบทิ้งนะครับ. ถือว่าซ้ำกับอันนี้ล่ะกัน)
|
ยอดเยี่ยมครับ
อยากรู้นานแล้ว :D |
เวลาที่แสดงทั้งหมด เป็นเวลาที่ประเทศไทย (GMT +7) ขณะนี้เป็นเวลา 00:05 |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Modified by Jetsada Karnpracha