તારીખમાંથી સમય ઉમેરવા અથવા ઘટાડવા માટે વિવિધ એકમો - વર્ષ, મહિના, અઠવાડિયા અને દિવસોનો ઉપયોગ કરો. પ્રોજેક્ટ યોજના, શેડ્યુલિંગ અને વિવિધ સમય આધારિત ગણનાઓ માટે ઉપયોગી.
કેલેન્ડર કેલ્ક્યુલેટર એ તારીખ ગણિત ક્રિયાઓ કરવા માટે રચાયેલ એક બહુપરકારની સાધન છે. તે વપરાશકર્તાઓને આપેલ તારીખમાંથી સમય એકમો (વર્ષ, મહિના, અઠવાડિયા અને દિવસો) ઉમેરવા અથવા ઘટાડવા માટેની મંજૂરી આપે છે. આ કેલ્ક્યુલેટર પ્રોજેક્ટની યોજના, શેડ્યૂલિંગ અને વિવિધ સમય આધારિત ગણનાઓ માટે ખાસ ઉપયોગી છે.
કેલેન્ડર કેલ્ક્યુલેટર તારીખ ગણનાઓ માટે નીચેની અલ્ગોરિધમનો ઉપયોગ કરે છે:
વર્ષો ઉમેરવા/ઘટાડવા માટે:
મહિના ઉમેરવા/ઘટાડવા માટે:
અઠવાડિયાઓ ઉમેરવા/ઘટાડવા માટે:
દિવસો ઉમેરવા/ઘટાડવા માટે:
કૂણાકાર વર્ષ: જ્યારે વર્ષો ઉમેરવા/ઘટાડવા, 29 ફેબ્રુઆરી માટે ખાસ ધ્યાન રાખવામાં આવે છે. જો પરિણામે મળતું વર્ષ કૂણાકાર વર્ષ ન હોય, તો તારીખ 28 ફેબ્રુઆરી પર સમાયોજિત થાય છે.
મહિના ના અંતિમ તારીખો: જ્યારે મહિના ઉમેરવા/ઘટાડવા, જો પરિણામે મળતી તારીખ અસ્તિત્વમાં નથી (ઉદાહરણ તરીકે, 31 એપ્રિલ), તો તે મહિના ના અંતિમ માન્ય તારીખ પર સમાયોજિત થાય છે (ઉદાહરણ તરીકે, 30 એપ્રિલ).
BCE/CE પરિવર્તન: કેલ્ક્યુલેટર BCE/CE પરિવર્તન દરમિયાન તારીખોને યોગ્ય રીતે હેન્ડલ કરે છે, આને ધ્યાનમાં રાખીને કે ગ્રેગોરિયન કેલેન્ડરમાં વર્ષ 0 નથી.
તારીખની મર્યાદાઓ: કેલ્ક્યુલેટર આધારભૂત તારીખ પ્રણાલીના મર્યાદાઓને માન્ય રાખે છે, સામાન્ય રીતે 1 CE થી 31 ડિસેમ્બર, 9999 CE સુધી.
કેલેન્ડર કેલ્ક્યુલેટર પાસે અનેક વ્યાવસાયિક એપ્લિકેશન્સ છે:
પ્રોજેક્ટ મેનેજમેન્ટ: પ્રોજેક્ટની સમયમર્યાદાઓ, માઇલસ્ટોનની તારીખો અને સ્પ્રિન્ટની અવધિઓની ગણના કરવી.
નાણાકીય યોજના: ચુકવણીની સમયમર્યાદાઓ, ઉધારની શરતો અને રોકાણની પરિપક્વતાની તારીખો નક્કી કરવી.
ઇવેન્ટની યોજના: પુનરાવર્તિત ઇવેન્ટ્સ, તહેવારોના શેડ્યૂલ અથવા વર્ષગાંઠની ઉજવણી માટેની તારીખોની ગણના કરવી.
કાનૂની અને કરારિક: કાનૂની પ્રક્રિયાઓ માટેની સમયમર્યાદાઓ, કરારની સમાપ્તિ અથવા સૂચના સમયગાળા માટેની ગણના કરવી.
શૈક્ષણિક આયોજન: સેમેસ્ટરની શરૂઆત/અંતની તારીખો, અસાઇનમેન્ટની સમયમર્યાદાઓ અથવા સંશોધન સમયરેખાઓ નક્કી કરવી.
પ્રવાસની યોજના: પ્રવાસની અવધિઓ, વિઝાની સમાપ્તિની તારીખો અથવા બુકિંગની વિન્ડોઝની ગણના કરવી.
આરોગ્યકાળ: અનુસંધાનની મુલાકાતો, દવાઓના ચક્ર અથવા સારવારની અવધિઓનું આયોજન કરવું.
ઉત્પાદન અને લોજિસ્ટિક્સ: ઉત્પાદનના શેડ્યૂલ, ડિલિવરીની તારીખો અથવા જાળવણીની અંતરાલોની યોજના બનાવવી.
જ્યારે કેલેન્ડર કેલ્ક્યુલેટર બહુપરકારનું છે, ત્યારે તારીખ અને સમયના હેન્ડલિંગ માટે અન્ય સાધનો અને પદ્ધતિઓ છે:
સ્પ્રેડશીટ ફંક્શન: માઇક્રોસોફ્ટ એક્સેલ અને ગૂગલ શીટ્સ જેવા કાર્યક્રમો સરળ ગણનાઓ માટે બિલ્ટ-ઇન તારીખ ફંક્શન્સ ઓફર કરે છે.
પ્રોગ્રામિંગ ભાષા લાઇબ્રેરીઝ: મોટાભાગની પ્રોગ્રામિંગ ભાષાઓમાં મજબૂત તારીખ/સમય લાઇબ્રેરીઝ હોય છે (જેમ કે પાયથનમાં datetime, જાવાસ્ક્રિપ્ટમાં Moment.js).
ઑનલાઇન તારીખ કેલ્ક્યુલેટર્સ: વિવિધ વેબસાઇટ્સ સરળ તારીખની ગણનાના સાધનો ઓફર કરે છે, ઘણીવાર વિશિષ્ટ ફોકસ સાથે (ઉદાહરણ તરીકે, કાર્યદિવસના કેલ્ક્યુલેટર્સ).
પ્રોજેક્ટ મેનેજમેન્ટ સોફ્ટવેર: માઇક્રોસોફ્ટ પ્રોજેક્ટ અથવા જિરા જેવા સાધનોમાં તેમના શેડ્યૂલિંગ કાર્યક્ષમતામાં તારીખની ગણના કરવાની સુવિધાઓનો સમાવેશ થાય છે.
યુનિક્સ ટાઈમસ્ટેમ્પ કેલ્ક્યુલેટર્સ: ટેકનિકલ વપરાશકર્તાઓ માટે, આ સાધનો તારીખોને 1 જાન્યુઆરી 1970થી પસાર થયેલ સેકંડ્સ તરીકે કામ કરે છે.
મોબાઇલ એપ્સ: ઘણા કેલેન્ડર અને ઉત્પાદનકર્તા એપ્સમાં તારીખની ગણના કરવાની સુવિધાઓ હોય છે.
તારીખની ગણના નો વિચાર કેલેન્ડર પ્રણાલીઓના વિકાસ સાથે વિકસિત થયો છે:
પ્રાચીન સંસ્કૃતિઓ: ઇજિપ્તીઓ, બેબિલોનિયન અને માયનોએ જટિલ કેલેન્ડર પ્રણાલીઓ વિકસાવી, જે તારીખની ગણનાઓ માટેનું આધારભૂત કામ કર્યું.
જુલિયન કેલેન્ડર (45 BCE): જુલિયસ સીઝરે રજૂ કર્યું, તે સૂર્ય વર્ષને માનક બનાવે છે અને કૂણાકાર વર્ષોના વિચારને રજૂ કરે છે, જે લાંબા ગાળાની તારીખની ગણનાઓને વધુ ચોકસાઈથી બનાવે છે.
ગ્રેગોરિયન કેલેન્ડર (1582): પોપ ગ્રેગોરી XIII દ્વારા રજૂ કરાયું, તે જુલિયન કેલેન્ડરના કૂણાકાર વર્ષના નિયમને સુધારે છે, જે તારીખની લાંબા ગાળાની ગણનાની ચોકસાઈમાં સુધારો કરે છે.
માનક સમયની અપનાવણી (19મી સદી): સમય ઝોન અને માનક સમયની રજૂઆત એ વધુ ચોકસાઈથી આંતરરાષ્ટ્રીય તારીખ અને સમયની ગણનાઓને સુલભ બનાવે છે.
કમ્પ્યુટર યુગ (20મી સદી): કમ્પ્યુટર્સના ઉદ્ભવ સાથે વિવિધ તારીખ/સમયની લાઇબ્રેરીઝ અને અલ્ગોરિધમોનું વિકાસ થયું, જે જટિલ તારીખની ગણનાને સુલભ અને ઝડપી બનાવે છે.
યુનિક્સ ટાઈમસ્ટેમ્પ (1970): તારીખોને 1 જાન્યુઆરી 1970થી પસાર થયેલ સેકંડ્સ તરીકે પ્રતિનિધિત્વ કરવાનો એક માનક માર્ગ રજૂ કર્યો, જે કમ્પ્યુટર પ્રણાલીઓમાં તારીખની ગણનાને સરળ બનાવે છે.
ISO 8601 (1988): તારીખ અને સમયના પ્રતિનિધિત્વ માટે આ આંતરરાષ્ટ્રીય ધોરણે વિવિધ પ્રણાલીઓ અને સંસ્કૃતિઓમાં તારીખની ગણનાને માનક બનાવવામાં મદદ કરી.
અહીં વિવિધ પ્રોગ્રામિંગ ભાષાઓમાં તારીખની ગણનાઓ કરવા માટે કેટલાક કોડ ઉદાહરણો છે:
1from datetime import datetime, timedelta
2
3def add_time(date_str, years=0, months=0, weeks=0, days=0):
4 date = datetime.strptime(date_str, "%Y-%m-%d")
5
6 # વર્ષો અને મહિના ઉમેરો
7 new_year = date.year + years
8 new_month = date.month + months
9 while new_month > 12:
10 new_year += 1
11 new_month -= 12
12 while new_month < 1:
13 new_year -= 1
14 new_month += 12
15
16 # મહિના ના અંતિમ કેસો હેન્ડલ કરો
17 last_day_of_month = (datetime(new_year, new_month % 12 + 1, 1) - timedelta(days=1)).day
18 new_day = min(date.day, last_day_of_month)
19
20 new_date = date.replace(year=new_year, month=new_month, day=new_day)
21
22 # અઠવાડિયા અને દિવસો ઉમેરો
23 new_date += timedelta(weeks=weeks, days=days)
24
25 return new_date.strftime("%Y-%m-%d")
26
27## ઉદાહરણ ઉપયોગ
28print(add_time("2023-01-31", months=1)) # આઉટપુટ: 2023-02-28
29print(add_time("2023-02-28", years=1)) # આઉટપુટ: 2024-02-28
30print(add_time("2023-03-15", weeks=2, days=3)) # આઉટપુટ: 2023-04-01
31
1function addTime(dateStr, years = 0, months = 0, weeks = 0, days = 0) {
2 let date = new Date(dateStr);
3
4 // વર્ષો અને મહિના ઉમેરો
5 date.setFullYear(date.getFullYear() + years);
6 date.setMonth(date.getMonth() + months);
7
8 // અઠવાડિયા અને દિવસો ઉમેરો
9 date.setDate(date.getDate() + (weeks * 7) + days);
10
11 return date.toISOString().split('T')[0];
12}
13
14// ઉદાહરણ ઉપયોગ
15console.log(addTime("2023-01-31", 0, 1)); // આઉટપુટ: 2023-02-28
16console.log(addTime("2023-02-28", 1)); // આઉટપુટ: 2024-02-28
17console.log(addTime("2023-03-15", 0, 0, 2, 3)); // આઉટપુટ: 2023-04-01
18
1import java.time.LocalDate;
2import java.time.Period;
3
4public class DateCalculator {
5 public static String addTime(String dateStr, int years, int months, int weeks, int days) {
6 LocalDate date = LocalDate.parse(dateStr);
7
8 // વર્ષો, મહિના, અઠવાડિયા અને દિવસો ઉમેરો
9 LocalDate newDate = date
10 .plus(Period.ofYears(years))
11 .plus(Period.ofMonths(months))
12 .plus(Period.ofWeeks(weeks))
13 .plus(Period.ofDays(days));
14
15 return newDate.toString();
16 }
17
18 public static void main(String[] args) {
19 System.out.println(addTime("2023-01-31", 0, 1, 0, 0)); // આઉટપુટ: 2023-02-28
20 System.out.println(addTime("2023-02-28", 1, 0, 0, 0)); // આઉટપુટ: 2024-02-28
21 System.out.println(addTime("2023-03-15", 0, 0, 2, 3)); // આઉટપુટ: 2023-04-01
22 }
23}
24
આ ઉદાહરણો પાયથન, જાવાસ્ક્રિપ્ટ અને જાવામાં તારીખની ગણનાઓ કેવી રીતે કરવા તે દર્શાવે છે, જે મહિના ના અંતિમ તારીખો અને કૂણાકાર વર્ષ જેવા વિવિધ કિનારેના કેસોને હેન્ડલ કરે છે.
31 જાન્યુઆરી 2023ને 1 મહિનો ઉમેરવો:
29 ફેબ્રુઆરી 2024ને 1 વર્ષ ઉમેરવું (એક કૂણાકાર વર્ષ):
15 માર્ચ 2023માંથી 2 અઠવાડિયા અને 3 દિવસ ઘટાડવા:
31 જુલાઈ 2022ને 18 મહિના ઉમેરવા:
રિચર્ડ્સ, ઈ. જી. (2013). કેલેન્ડર્સ. એસ. ઈ. ઉર્બન અને પી. કે. સેઇડેલમેન (સંપાદકો), ખગોળીય અલમનકનો સ્પષ્ટીકરણ પૂરક (3મું સંસ્કરણ, પૃ. 585-624). મિલ વેલી, કેલિફોર્નિયા: યુનિવર્સિટી સાયન્સ બુક્સ.
ડર્સહોવિઝ, એન., અને રેંગોલ્ડ, ઈ. એમ. (2008). કેલેન્ડ્રિકલ ગણનાઓ (3મું સંસ્કરણ). કેમ્બ્રિજ યુનિવર્સિટી પ્રેસ.
કુહ્ન, એમ., અને જ્હોનસન, કે. (2013). એપ્લાઇડ પ્રેડિક્ટિવ મોડેલિંગ. સ્પ્રિંગર.
"તારીખ અને સમય વર્ગો". ઓરેકલ. https://docs.oracle.com/javase/8/docs/api/java/time/package-summary.html
"datetime — બેઝિક તારીખ અને સમય પ્રકારો". પાયથન સોફ્ટવેર ફાઉન્ડેશન. https://docs.python.org/3/library/datetime.html
"તારીખ". મોઝિલ્લા ડેવલપર નેટવર્ક. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date
તમારા વર્કફ્લો માટે ઉપયોગી થવાના વધુ સાધનો શોધો