คำนวณวันในปีสำหรับวันที่ใดก็ได้และกำหนดจำนวนวันที่เหลือในปี เป็นประโยชน์สำหรับการวางแผนโครงการ, เกษตรกรรม, ดาราศาสตร์, และการคำนวณตามวันที่ต่างๆ
วันของปี: 0
วันที่เหลือในปี: 0
ความก้าวหน้าในปี
เครื่องคำนวณวันในปีเป็นเครื่องมือที่มีประโยชน์สำหรับการกำหนดวันในปีตามหมายเลขสำหรับวันที่กำหนด รวมถึงการคำนวณจำนวนวันที่เหลืออยู่ในปี เครื่องคำนวณนี้อิงตามปฏิทินเกรกอเรียน ซึ่งเป็นปฏิทินที่ใช้กันอย่างแพร่หลายที่สุดในโลกในปัจจุบัน
วันในปีจะถูกคำนวณโดยใช้สูตรต่อไปนี้:
สำหรับปีที่ไม่ใช่ปีอธิกสุรทิน:
สำหรับปีอธิกสุรทิน:
โดยที่:
จำนวนวันที่เหลืออยู่ในปีจะถูกคำนวณเป็น:
เครื่องคำนวณจะทำตามขั้นตอนต่อไปนี้:
ปีใดเป็นปีอธิกสุรทินหากสามารถหารด้วย 4 ยกเว้นปีศตวรรษซึ่งจะต้องหารด้วย 400 เพื่อเป็นปีอธิกสุรทิน ตัวอย่างเช่น ปี 2000 และ 2400 เป็นปีอธิกสุรทิน ในขณะที่ปี 1800, 1900, 2100, 2200, 2300 และ 2500 ไม่ใช่ปีอธิกสุรทิน
เครื่องคำนวณวันในปีมีการใช้งานหลากหลาย:
ในขณะที่วันในปีเป็นมาตรการที่มีประโยชน์ แต่ก็มีการคำนวณวันที่ที่เกี่ยวข้องอื่น ๆ ที่อาจเหมาะสมกว่าในบางสถานการณ์:
แนวคิดในการนับวันภายในปีเป็นส่วนสำคัญของระบบปฏิทินตลอดประวัติศาสตร์ อcivilizationsโบราณ เช่น อียิปต์, มายัน และโรมัน ได้พัฒนาวิธีการต่างๆ ในการติดตามวันและฤดูกาล
ปฏิทินจูเลียน ซึ่งนำโดยจูเลียส ซีซาร์ในปี 45 ก่อนคริสต์ศักราช เป็นก้าวสำคัญสู่ปฏิทินสมัยใหม่ มันได้กำหนดแนวคิดของปีอธิกสุรทิน โดยการเพิ่มวันพิเศษทุกสี่ปีเพื่อให้ปฏิทินสอดคล้องกับปีสุริยะ
ปฏิทินเกรกอเรียน ซึ่งนำโดยสมเด็จพระสันตะปาปาเกรกอรีที่ 13 ในปี 1582 ได้ปรับปรุงกฎปีอธิกสุรทินให้เป็นรูปแบบปัจจุบัน ปฏิทินนี้เป็นมาตรฐานสากลสำหรับการใช้งานทางการและเป็นพื้นฐานสำหรับการคำนวณวันในปีส่วนใหญ่
ความจำเป็นในการนับวันอย่างแม่นยำกลายเป็นสิ่งสำคัญมากขึ้นเมื่อคอมพิวเตอร์และระบบดิจิทัลเกิดขึ้น ในกลางศตวรรษที่ 20 นักวิทยาศาสตร์คอมพิวเตอร์ได้พัฒนาระบบการเข้ารหัสวันที่ต่างๆ รวมถึง Unix timestamp (นับวินาทีตั้งแต่วันที่ 1 มกราคม 1970) และ ISO 8601 (มาตรฐานสากลสำหรับการแสดงวันที่และเวลา)
ในปัจจุบัน การคำนวณวันในปีถูกใช้ในหลายสาขา ตั้งแต่ดาราศาสตร์ไปจนถึงการเงิน แสดงให้เห็นถึงความสำคัญที่ยังคงมีอยู่ของการเก็บบันทึกเวลาและการแสดงวันที่อย่างแม่นยำในโลกสมัยใหม่ของเรา
นี่คือตัวอย่างโค้ดเพื่อคำนวณวันในปีสำหรับภาษาการเขียนโปรแกรมต่างๆ:
1' ฟังก์ชัน Excel VBA สำหรับวันในปี
2Function DayOfYear(inputDate As Date) As Integer
3 DayOfYear = inputDate - DateSerial(Year(inputDate), 1, 0)
4End Function
5' การใช้งาน:
6' =DayOfYear(DATE(2023,7,15))
7
1import datetime
2
3def day_of_year(date):
4 return date.timetuple().tm_yday
5
6## การใช้งานตัวอย่าง:
7date = datetime.date(2023, 7, 15)
8day = day_of_year(date)
9days_left = 365 - day # ปรับสำหรับปีอธิกสุรทินหากจำเป็น
10print(f"วันในปี: {day}")
11print(f"วันที่เหลือในปี: {days_left}")
12
1function dayOfYear(date) {
2 const start = new Date(date.getFullYear(), 0, 0);
3 const diff = date - start;
4 const oneDay = 1000 * 60 * 60 * 24;
5 return Math.floor(diff / oneDay);
6}
7
8// การใช้งานตัวอย่าง:
9const date = new Date(2023, 6, 15); // 15 กรกฎาคม 2023
10const day = dayOfYear(date);
11const daysLeft = (isLeapYear(date.getFullYear()) ? 366 : 365) - day;
12console.log(`วันในปี: ${day}`);
13console.log(`วันที่เหลือในปี: ${daysLeft}`);
14
15function isLeapYear(year) {
16 return (year % 4 === 0 && year % 100 !== 0) || (year % 400 === 0);
17}
18
1import java.time.LocalDate;
2import java.time.temporal.ChronoUnit;
3
4public class DayOfYearCalculator {
5 public static int dayOfYear(LocalDate date) {
6 return date.getDayOfYear();
7 }
8
9 public static int daysLeftInYear(LocalDate date) {
10 LocalDate lastDayOfYear = LocalDate.of(date.getYear(), 12, 31);
11 return (int) ChronoUnit.DAYS.between(date, lastDayOfYear);
12 }
13
14 public static void main(String[] args) {
15 LocalDate date = LocalDate.of(2023, 7, 15);
16 int dayOfYear = dayOfYear(date);
17 int daysLeft = daysLeftInYear(date);
18 System.out.printf("วันในปี: %d%n", dayOfYear);
19 System.out.printf("วันที่เหลือในปี: %d%n", daysLeft);
20 }
21}
22
ตัวอย่างเหล่านี้แสดงให้เห็นถึงวิธีการคำนวณวันในปีและวันที่เหลือสำหรับวันที่กำหนดโดยใช้ภาษาการเขียนโปรแกรมต่างๆ คุณสามารถปรับฟังก์ชันเหล่านี้ให้เหมาะสมกับความต้องการของคุณหรือรวมเข้ากับระบบการประมวลผลวันที่ที่ใหญ่ขึ้น
ปีที่ไม่ใช่ปีอธิกสุรทิน (2023):
ปีอธิกสุรทิน (2024):
วันปีใหม่:
วันส่งท้ายปีเก่า:
ค้นพบเครื่องมือเพิ่มเติมที่อาจมีประโยชน์สำหรับการทำงานของคุณ