क्या किसी के पास कोई तारीख है कि दो तारीख सीमाओं के बीच छेड़छाड़ की जाने वाली राशि की सर्वोत्तम गणना कैसे करें?दो दिनांक सीमाओं के बीच अंतरण की संख्या
उत्तर
शुरुआत के बाद और अंत के पहले द्वारा परिभाषित एक नई सीमा प्राप्त करें, और उस नई सीमा में प्रत्येक दिन के लिए युग की शुरुआत के बाद से दिनों की संख्या निर्धारित करें।
अंतर अंतरंग में दिनों की संख्या है। केवल सकारात्मक मूल्य स्वीकार करें।
व्यक्तिगत तिथियों की बजाय खाते में स्थानांतरित करने के लिए संपादित किया गया।
प्रश्न दो तारीखों के बीच दो तारीखों के बीच पूछता है। (टिप्पणियां के जवाब में संपादित)
तो अगर आप 2 समय अवधियों (r1s, R1E) है, तो आप यह निर्धारित करने के पहले शुरू होता है की जरूरत है, वहाँ ओवरलैप है, और ओवरलैप क्या है।
double overlap(DateTime r1s, DateTime r1e, DateTime r2s, DateTime r1e){
DateTime t1s,t1e,t2s,t2e;
if (rs1<rs2) //Determine which range starts first
{
t1s = r1s;
t1e = r1e;
t2s = r2s;
t2e = r2e;
}
else
}
t1s = r2s;
t1e = r2e;
t2s = r1s;
t2e = r1e;
}
if (t1e<t2s) //No Overlap
{
return -1;
}
if (t1e<t2e) //Partial Overlap
}
TimeSpan diff = new TimeSpan(t1e.Ticks - t2s.Ticks);
{
else //Range 2 totally withing Range 1
}
TimeSpan diff = new TimeSpan(t2e.Ticks - t2s.Ticks);
{
double daysDiff = diff.TotalDays;
return daysDiff;
}
"मान लीजिए कि टी 1 हमेशा <टी 2 एस है।" हमें क्यों मानना चाहिए? परीक्षा। और आपका कोड संकलित नहीं होगा। मेरा मानना है कि मुझे लगता है कि आप इसके साथ कहां जा रहे हैं, लेकिन इसे बाहर निकालें और धारणाएं छोड़ दें। –
आप सही हैं। इसके अलावा मैं (और ऊपर दिए गए उत्तरों) मानते हैं कि ओवरलैप है। हमें इसके लिए भी परीक्षण करने की ज़रूरत है। – WombatPM
अगर मैं अपने प्रश्न को समझते हैं, आप दिन है कि इस तरह के रूप में दो समय अवधियों, ओवरलैप की संख्या के लिए पूछ रहे हैं: रेंज 1 = 2010/01/01 के लिए 2010/02/01 रेंज 2 = 2010-1-5 से 2010-2-5 इस उदाहरण में अंतरण दिनों की संख्या 28 दिन होगी।
यहाँ यहाँ आर से एक उदाहरण है कि इस सवाल का जवाब स्पष्ट हो सकता है कि उदाहरण के
DateTime rs1 = new DateTime(2010, 1, 1);
DateTime re1 = new DateTime(2010, 2, 1);
DateTime rs2 = new DateTime(2010, 1, 5);
DateTime re2 = new DateTime(2010, 2, 5);
TimeSpan d = new TimeSpan(Math.Max(Math.Min(re1.Ticks, re2.Ticks) - Math.Max(rs1.Ticks, rs2.Ticks) + TimeSpan.TicksPerDay, 0));
के लिए एक कोड नमूना है।
c_st = as.POSIXct("1996-10-14")
c_ed = as.POSIXct("1996-10-19")
d_st = as.POSIXct("1996-10-17")
d_ed = as.POSIXct("1999-10-22")
max(range(c_st,c_ed))-min(range(d_st,d_ed)) >= 0 & min(range(c_st,c_ed)) < max(range(d_st,d_ed))
सच यह इंगित करेगा कि वे छेड़छाड़ करते हैं, अन्यथा झूठा। [आर]
यहां गणना करने के लिए मैंने एक छोटी सी विधि लिखी है।
private static int inclusiveDays(DateTime s1, DateTime e1, DateTime s2, DateTime e2)
{
// If they don't intersect return 0.
if (!(s1 <= e2 && e1 >= s2))
{
return 0;
}
// Take the highest start date and the lowest end date.
DateTime start = s1 > s2 ? s1 : s2;
DateTime end = e1 > e2 ? e2 : e1;
// Add one to the time range since its inclusive.
return (int)(end - start).TotalDays + 1;
}
ग्रेट, सीधे आगे समाधान। मेरे लिए काम करता है और मेरे सभी परीक्षण पास करता है। –
- 1. दो फ्लोट्स के बीच फ्लोट की संख्या
- 2. दो तिथियों के बीच महीनों की संख्या - बूस्ट की तारीख
- 3. मुझे रूबी पर दो दिनांक समय के बीच सेकेंड की संख्या कैसे मिलती है
- 4. सी # - मिनटों में दो दिनांक समय के बीच की अवधि
- 5. दो स्थानों के बीच मार्गों की संख्या पाएं
- 6. दो तिथियों के बीच दिनों की संख्या - एएनएसआई एसक्यूएल
- 7. आईफोन - दो तिथियों के बीच दिनों की संख्या प्राप्त करें
- 8. दो दिनांक
- 9. गणना लापता तिथि सीमाओं तथा दो तिथियों
- 10. mysql पर दो तिथियों के बीच अंतर के दिनों की संख्या कैसे प्राप्त करें?
- 11. दो अलग-अलग डेटटाइम ऑब्जेक्ट्स के बीच दिनों की संख्या प्राप्त करें
- 12. PHP दो तिथियों के बीच कार्यालय घंटों की संख्या की गणना करने के लिए
- 13. पर्ल में दो तिथियों के बीच की संख्या की गणना कैसे कर सकता हूं?
- 14. आप दो तिथियों के बीच सप्ताहों की संख्या की गणना कैसे करते हैं?
- 15. टीएसक्यूएल में दो तिथियों के बीच "मंगलवार" की संख्या की गणना कैसे करें?
- 16. दिनांक परिवर्तन के संबंध में दो समय फ़ील्ड के बीच समय अंतर की गणना कैसे करें
- 17. अंतरण लाइनों vim
- 18. दो निर्दिष्ट तारीखों के बीच की तारीखों को कैसे खोजें?
- 19. तालिका सीमा-अंतरण
- 20. दो निर्देशिकाओं की सामग्रियों के बीच अंतर
- 21. फास्ट एल्गोरिदम दो संख्याओं के बीच प्राइम्स की संख्या खोजने के लिए
- 22. क्या दो अंकों की सकारात्मक संख्या एक समान संख्या है?
- 23. दो कनेक्टेड सीमाओं का मोर्फोलॉजिकल अलगाव
- 24. दो Zend_Date ऑब्जेक्ट्स के दिनांक भागों की तुलना कैसे करें?
- 25. दिनांक सीमा के बीच जावास्क्रिप्ट लूप
- 26. मैं सी # में दो तिथियों के बीच, दिनों की संख्या, रविवार को कैसे गणना करूं?
- 27. मुझे दो तिथियों के बीच वर्षों की संख्या कैसे मिल सकती है?
- 28. जावा में दो तिथियों के बीच दिनों की संख्या कैसे प्राप्त करें?
- 29. एसक्यूएल सर्वर 2005 में दो तिथियों के बीच महीनों की संख्या कैसे प्राप्त करें
- 30. एसक्यूएल सर्वर में दो तिथियों के बीच घंटों की कुल संख्या कैसे प्राप्त करें?
आपकी टिप्पणियों के लिए सभी को धन्यवाद ... महान सुझाव! मुझे एहसास नहीं हुआ कि यह इतना आसान था। – BoredOfBinary