ઉમર કેલ્કુલેટર — વર્ષો, મહિનાઓ અને દિવસોમાં ચોક્કસ ઉમર
મફત ઉમર કેલ્કુલેટર: તમારી જન્મ તારીખ દાખલ કરો તમારી ચોક્કસ ઉમર વર્ષો, મહિનાઓ અને દિવસોમાં મેળવવા માટે, વધુમાં કુલ અઠવાડિયા, દિવસો, કલાકો અને તમારો આગામી જન્મદિવસ.
ઉમર કેલ્કુલેટર
તમે જન્મ્યા હતા Monday
આગામી જન્મદિવસ: 127 દિવસો દૂર (37 બની રહ્યા છો)
તમારી ઉમર અન્ય એકમોમાં
જીવન પ્રગતિ
તમારી ઉમર 80-વર્ષની દૃશ્ય સંદર્ભ ગાળા સામે.
દસ્તાવેજીકરણ
ઉંમર ગણતરી શું છે?
ઉંમર ગણતરી જન્મતારીખ અને લક્ષ્ય તારીખ, સામાન્ય રીતે આજની તારીખ, વચ્ચેનો ચોક્કસ સમય શોધે છે. તે પરિણામ વર્ષ, મહિના અને દિવસોમાં તેમજ મહિના, અઠવાડિયા, દિવસો, કલાકો, મિનિટો અને સેકન્ડોના કુલ સતત સરવાળા તરીકે દર્શાવે છે. ભૂતકાળની અથવા ભવિષ્યની તારીખ માટે પણ ઉંમર ગણવી શકાય છે, જે દર્શાવે છે કે વ્યક્તિ તે દિવસે કેટલી ઉંમરની હતી અથવા થશે.
ઉંમર કેવી રીતે ગણવી
ઉંમર બે કૅલેન્ડર તારીખો વચ્ચેનો તફાવત છે. આ તફાવત દર્શાવવાની બે સાચી રીતો છે અને બંને જુદા હેતુઓ માટે ઉપયોગી છે.
કૅલેન્ડર મુજબની ઉંમર (વર્ષ, મહિના, દિવસો)
લોકો પોતાની ઉંમર સામાન્ય રીતે આ રીતે જણાવે છે: "33 વર્ષ, 4 મહિના અને 5 દિવસની ઉંમર." તે ત્રણ પગલાંમાં મળે છે:
- જન્મતારીખથી પસાર થયેલા પૂર્ણ વર્ષોની ગણતરી કરો.
- સૌથી તાજેતરના જન્મદિવસથી પસાર થયેલા પૂર્ણ મહિનાઓની ગણતરી કરો.
- ત્યારબાદ બાકી રહેલા દિવસોની ગણતરી કરો.
મહિનાના અંતની નજીક 3મું પગલું મુશ્કેલ બને છે, કારણ કે બધા મહિનાઓમાં દિવસોની સંખ્યા સમાન હોતી નથી. 31 જાન્યુઆરીએ જન્મેલી વ્યક્તિની ઉંમર 1 માર્ચે માપવામાં આવે તો તે 1 મહિના અને 1 દિવસની હોય છે. 31 જાન્યુઆરી પછીનો એક મહિનો 28 ફેબ્રુઆરી છે (અથવા લીપ વર્ષમાં 29 ફેબ્રુઆરી), કારણ કે 31 ફેબ્રુઆરી હોતી નથી. તેના એક દિવસ પછી 1 માર્ચ આવે છે. Python લાઇબ્રેરીએ પ્રચલિત કરેલા આ નિયમને ક્યારેક relativedelta નિયમ કહેવામાં આવે છે. તેમાં ટૂંકા મહિનાની છેલ્લી તારીખને વર્ષગાંઠની તારીખ તરીકે લેવામાં આવે છે, જેથી દિવસોની ગણતરી ક્યારેય ઋણ ન થાય.
કુલ વીતેલો સમય (દિવસો, કલાકો, સેકન્ડો)
જીવિત રહેલા સમયની ચોક્કસ ગણતરી માટે બંને તારીખોને સમયના એક જ બિંદુમાં રૂપાંતરિત કરીને તફાવતની પૂર્ણ દિવસોમાં ગણતરી કરવામાં આવે છે:
જ્યાં d સંપૂર્ણ દિવસોની સંખ્યા છે, t લક્ષ્ય તારીખ છે અને b જન્મતારીખ છે; દરેકને મિલિસેકન્ડની ગણતરી તરીકે લેવામાં આવે છે, અને વિભાજક એક દિવસમાં રહેલા મિલિસેકન્ડોની સંખ્યા છે.
બાદબાકી કરતાં પહેલાં બંને તારીખો મધરાતના UTC (સંકલિત વૈશ્વિક સમય) પર ગોઠવવામાં આવે છે. તેથી ડેલાઇટ-સેવિંગ સમયના ફેરફારો એક કલાક ઉમેરતા કે ઘટાડતા નથી અને દિવસોની ગણતરીમાં ગડબડ થતી નથી. કુલ દિવસોની સંખ્યામાંથી અઠવાડિયાની ગણતરી દિવસોને 7 વડે ભાગીને અને નીચેની પૂર્ણ સંખ્યા લઈને થાય છે. કલાકો, મિનિટો અને સેકન્ડો માટે દિવસોની સંખ્યાને અનુક્રમે 24, 1,440 અને 86,400 વડે ગુણવામાં આવે છે.
કુલ દિવસોને 365 અથવા 365.25 વડે ભાગવાથી વર્ષોમાં અંદાજિત ઉંમર મળે છે, પરંતુ તે સમયગાળામાં કયા વર્ષો લીપ વર્ષ હતાં તે જાણી શકાતું નથી. ઉપર વર્ણવેલી કૅલેન્ડર મુજબની ગણતરી ચોક્કસ છે. "મારી ઉંમર કેટલી છે?" એવા પ્રશ્નનો જવાબ આપવા કૅલેન્ડર મુજબની ઉંમર વાપરો. દવાનો ડોઝ આપવાનો સમય નક્કી કરવા અથવા કોઈ મહત્વપૂર્ણ તારીખ સુધીની ગણતરી કરવા જેવી ચોક્કસ વીતેલા સમયની જરૂરિયાત ધરાવતાં કાર્યો માટે કુલ દિવસો અથવા અઠવાડિયાં વાપરો.
ઉદાહરણ સાથે ગણતરી
1 જાન્યુઆરી, 2000ના રોજ જન્મેલી વ્યક્તિની ઉંમર 1 જાન્યુઆરી, 2020ના રોજ માપવામાં આવે તો:
| માપ | મૂલ્ય |
|---|---|
| કૅલેન્ડર મુજબની ઉંમર | 20 વર્ષ, 0 મહિના, 0 દિવસ |
| કુલ મહિના | 240 |
| કુલ અઠવાડિયાં | 1,043 |
| કુલ દિવસો | 7,305 |
| કુલ કલાકો | 1,75,320 |
| કુલ મિનિટો | 1,05,19,200 |
| કુલ સેકન્ડો | 63,11,52,000 |
| જન્મનો વાર | શનિવાર |
7,305 દિવસોનો કુલ સરવાળો 20 × 365 ઉપરાંત લીપ વર્ષો 2000, 2004, 2008, 2012 અને 2016 માટેના 5 લીપ દિવસો બરાબર છે. આ દરેક વર્ષમાં 20 વર્ષના સમયગાળામાં આવતો 29 ફેબ્રુઆરી ઉમેરાયો હતો. તેથી દિવસોની સંખ્યા સાદી 20 × 365 કરતાં વધુ છે અને હાથથી ગણતરી કરતાં થોડા દિવસોની ભૂલ થવાની શક્યતા રહે છે.
કોડમાં ઉંમર ગણવાનું સૂત્ર
ઉપર વર્ણવેલી કૅલેન્ડર મુજબની ઉંમરની પદ્ધતિ મોટા ભાગની પ્રોગ્રામિંગ ભાષાઓમાં અમલમાં મૂકી શકાય છે. લીપ વર્ષ અને મહિનાની લંબાઈના નિયમો હાથથી લખવા કરતાં બિલ્ટ-ઇન તારીખ લાઇબ્રેરીનો ઉપયોગ વધુ સુરક્ષિત છે.
1from dateutil.relativedelta import relativedelta
2from datetime import date
3
4birth, target = date(2000, 1, 1), date(2020, 1, 1)
5
6age = relativedelta(target, birth) # calendar age
7print(f"{age.years}y {age.months}m {age.days}d")
8
9total_days = (target - birth).days # total elapsed days
10print(total_days) # 7305
111const MS_PER_DAY = 86400000;
2
3// Add n months, clamping the day to the target month's last day
4// (31 January + 1 month = 28 February). Date.UTC on its own does not
5// clamp: it would roll that date forward into March.
6function addMonthsUTC(base, n) {
7 const total = base.getUTCMonth() + n;
8 const y = base.getUTCFullYear() + Math.floor(total / 12);
9 const m = ((total % 12) + 12) % 12;
10 const lastDay = new Date(Date.UTC(y, m + 1, 0)).getUTCDate();
11 return Date.UTC(y, m, Math.min(base.getUTCDate(), lastDay));
12}
13
14function calendarAge(birth, target) {
15 let months = (target.getUTCFullYear() - birth.getUTCFullYear()) * 12
16 + (target.getUTCMonth() - birth.getUTCMonth());
17 if (addMonthsUTC(birth, months) > target.getTime()) months -= 1;
18 const anchor = addMonthsUTC(birth, months);
19 return {
20 years: Math.floor(months / 12),
21 months: months % 12,
22 days: Math.floor((target.getTime() - anchor) / MS_PER_DAY),
23 };
24}
25
26const birth = new Date(Date.UTC(2000, 0, 1));
27const target = new Date(Date.UTC(2020, 0, 1));
28
29calendarAge(birth, target); // { years: 20, months: 0, days: 0 }
30Math.floor((target - birth) / MS_PER_DAY); // 7305
311' Whole days between two dates (A1 = birth, B1 = target):
2=B1-A1
3
4' Calendar age in complete years / months / leftover days:
5=DATEDIF(A1, B1, "y") & " years, " & DATEDIF(A1, B1, "ym") & " months, " & DATEDIF(A1, B1, "md") & " days"
6Microsoft ચેતવણી આપે છે કે "md" દલીલ મહિનાની સીમાઓની નજીક ઋણ સંખ્યા અથવા ખોટી
દિવસોની ગણતરી આપી શકે છે, તેથી તે સૂત્રમાં બાકી રહેલા દિવસોનો ભાગ ઉપરના
છેલ્લી તારીખ સુધી ગોઠવવાના નિયમ સાથે હંમેશા સુસંગત હોતો નથી.
વારંવાર પૂછાતા પ્રશ્નો
મારી ચોક્કસ ઉંમર કેવી રીતે શોધું? જન્મતારીખ દાખલ કરો અને લક્ષ્ય તારીખ આજની તારીખ જ રાખો. પરિણામ વર્ષ, મહિના અને દિવસોમાં ઉંમર દર્શાવશે, તેમજ કુલ દિવસો, અઠવાડિયાં, કલાકો અને સેકન્ડોમાં પણ એ જ ઉંમર આપશે.
બે ઉંમર ગણતરી સાધનો જુદાં પરિણામો કેમ આપે છે? તફાવત સામાન્ય રીતે મહિનાની સીમાની નજીક બાકી રહેલા દિવસોની ગણતરી કરવાની રીતમાં હોય છે. ઉપર વર્ણવ્યા મુજબ મહિનાના અંતે ટૂંકા મહિનાની છેલ્લી તારીખ સુધી ગોઠવતું સાધન, વીતેલા સમયને માત્ર 30 વડે ભાગતા સાધનથી એક કે બે દિવસ જુદું પરિણામ આપી શકે છે.
શું ગણતરીમાં લીપ વર્ષો ધ્યાનમાં લેવામાં આવે છે? હા. કુલ દિવસોની ગણતરીમાં બંને તારીખો વચ્ચે આવતી દરેક 29 ફેબ્રુઆરીનો સમાવેશ થાય છે. 29 ફેબ્રુઆરી ન હોય તેવા વર્ષમાં, લીપ દિવસે જન્મેલી વ્યક્તિનો જન્મદિવસ તે મહિનાના છેલ્લા દિવસ 28 ફેબ્રુઆરી તરીકે ગણવામાં આવે છે. 29 ફેબ્રુઆરી, 1996ના રોજ જન્મેલી વ્યક્તિ 20 ફેબ્રુઆરી, 2023ના રોજ 26 વર્ષની, 11 મહિનાની અને 22 દિવસની હોય છે, અને તેનો આગામી જન્મદિવસ 8 દિવસ પછી, 28 ફેબ્રુઆરી, 2023ના રોજ આવે છે.
ભૂતકાળની અથવા ભવિષ્યની તારીખ માટે ઉંમર ગણી શકાય છે? હા. લક્ષ્ય તારીખ ભવિષ્યની તારીખ પર ગોઠવવાથી તે દિવસે વ્યક્તિ કેટલી ઉંમરની થશે તે જણાય છે. લક્ષ્ય તારીખને ભૂતકાળની તારીખ પર ગોઠવવાથી વ્યક્તિ તે દિવસે કેટલી ઉંમરની હતી તે જણાય છે. જન્મતારીખ ભવિષ્યની હોઈ શકતી નથી અને લક્ષ્ય તારીખ જન્મતારીખ પહેલાંની હોઈ શકતી નથી.
શું સમય ક્ષેત્રો પરિણામને અસર કરે છે? ના. દિવસોની ગણતરી કરતાં પહેલાં બંને તારીખોને UTC મધરાતમાં રૂપાંતરિત કરવામાં આવે છે, તેથી વપરાશકર્તાનું સ્થાન અથવા ડેલાઇટ-સેવિંગ સમયના ફેરફારો ગમે તે હોય, કુલ પરિણામ સમાન રહે છે.
દિવસોની સંખ્યાને 365.25 વડે ભાગવાથી મળતા પરિણામથી દિવસોની ગણતરી જુદી કેમ હોય છે? 365.25 માત્ર એક સરેરાશ વર્ષની લંબાઈ છે; તે સમયગાળામાં કયા ચોક્કસ વર્ષો 366 દિવસના લીપ વર્ષો હતાં તે દર્શાવતું નથી. બે વાસ્તવિક કૅલેન્ડર તારીખો વચ્ચેના પૂર્ણ દિવસોની ગણતરી ચોક્કસ છે.
સ્ત્રોતો
- Python
dateutil—relativedelta, ઉપર વર્ણવેલો કૅલેન્ડર અનુસાર ઉંમર ગણવાનો મહિના/દિવસનો નિયમ. - Java પ્લૅટફૉર્મ —
Period.betweenઅનેChronoUnit.DAYS. - Microsoft Excel —
DATEDIFફંક્શન. - MDN Web Docs —
Date. - Dershowitz, N., અને Reingold, E. M. Calendrical Calculations: The Ultimate Edition. Cambridge University Press, 2018.