محاسبه روز سال برای هر تاریخ معین و تعیین تعداد روزهای باقیمانده در سال. مفید برای برنامهریزی پروژه، کشاورزی، نجوم و محاسبات مختلف مبتنی بر تاریخ.
روز سال: 0
روزهای باقیمانده در سال: 0
پیشرفت در طول سال
محاسبه روز سال ابزاری مفید برای تعیین روز عددی سال برای تاریخ مشخص و همچنین محاسبه تعداد روزهای باقیمانده در سال است. این محاسبه بر اساس تقویم گرگوری است که رایجترین تقویم مدنی در جهان امروز است.
روز سال با استفاده از فرمول زیر محاسبه میشود:
برای سالهای غیر کبیسه:
برای سالهای کبیسه:
که در آن:
تعداد روزهای باقیمانده در سال بهصورت زیر محاسبه میشود:
محاسبهگر مراحل زیر را انجام میدهد:
یک سال کبیسه است اگر بر ۴ بخشپذیر باشد، به جز سالهای قرن که باید بر ۴۰۰ بخشپذیر باشند تا کبیسه باشند. به عنوان مثال، سالهای ۲۰۰۰ و ۲۴۰۰ کبیسه هستند، در حالی که سالهای ۱۸۰۰، ۱۹۰۰، ۲۱۰۰، ۲۲۰۰، ۲۳۰۰ و ۲۵۰۰ کبیسه نیستند.
محاسبهگر روز سال کاربردهای مختلفی دارد:
در حالی که روز سال یک معیار مفید است، محاسبات تاریخ مرتبط دیگری نیز وجود دارد که ممکن است در شرایط خاص مناسبتر باشند:
مفهوم شمارش روزها در یک سال بخشی جداییناپذیر از سیستمهای تقویمی در طول تاریخ بوده است. تمدنهای باستانی، از جمله مصریان، مایاها و رومیها، روشهای مختلفی برای پیگیری روزها و فصلها توسعه دادند.
تقویم یولیانی، که توسط ژولیوس سزار در سال ۴۵ قبل از میلاد معرفی شد، گامی مهم به سوی تقویم مدرن ما بود. این تقویم مفهوم سال کبیسه را معرفی کرد و هر چهار سال یک روز اضافی را اضافه کرد تا تقویم با سال خورشیدی هماهنگ بماند.
تقویم گرگوری، که توسط پاپ گرگوری سیزدهم در سال ۱۵۸۲ معرفی شد، قانون سال کبیسه را به شکل کنونی خود بیشتر اصلاح کرد. این تقویم اکنون استاندارد بینالمللی برای استفاده مدنی است و پایهگذار بیشتر محاسبات روز سال است.
نیاز به شمارش دقیق روزها با ظهور کامپیوترها و سیستمهای دیجیتال بهطور فزایندهای اهمیت پیدا کرد. در نیمه دوم قرن بیستم، دانشمندان کامپیوتر سیستمهای مختلف کدگذاری تاریخ را توسعه دادند، از جمله زمانسنج یونیکس (شمارش ثانیهها از ۱ ژانویه ۱۹۷۰) و ISO 8601 (یک استاندارد بینالمللی برای نمایش تاریخها و زمانها).
امروزه محاسبات روز سال در زمینههای مختلفی از نجوم تا مالی استفاده میشود و اهمیت مداوم نگهداری دقیق زمان و نمایش تاریخ در دنیای مدرن ما را نشان میدهد.
در اینجا برخی از مثالهای کد برای محاسبه روز سال برای زبانهای برنامهنویسی مختلف آورده شده است:
1' تابع 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); // ۱۵ ژوئیه ۲۰۲۳
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
این مثالها نحوه محاسبه روز سال و روزهای باقیمانده برای تاریخ مشخص را با استفاده از زبانهای برنامهنویسی مختلف نشان میدهند. میتوانید این توابع را به نیازهای خاص خود تنظیم کنید یا آنها را در سیستمهای بزرگتر پردازش تاریخ ادغام کنید.
۱. سال غیر کبیسه (۲۰۲۳):
۲. سال کبیسه (۲۰۲۴):
۳. روز سال نو:
۴. شب سال نو:
۱. "تقویم گرگوری." ویکیپدیا، بنیاد ویکیمدیا، https://en.wikipedia.org/wiki/Gregorian_calendar. دسترسی ۲ اوت ۲۰۲۴. ۲. "روز سال." ویکیپدیا، بنیاد ویکیمدیا، https://en.wikipedia.org/wiki/Day_of_the_year. دسترسی ۲ اوت ۲۰۲۴. ۳. "سال کبیسه." ویکیپدیا، بنیاد ویکیمدیا، https://en.wikipedia.org/wiki/Leap_year. دسترسی ۲ اوت ۲۰۲۴.
کشف ابزارهای بیشتری که ممکن است برای جریان کاری شما مفید باشند