KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
Is there a better way to calculate number of leap years between two years. Assuming I have start date and end date. I have my code, but I think there should be more elegant way. calling code: var numberOfLeapYears = NumberOfLeapYears(startDate.Year + 1, endDate.Year - 1); function itself: private static int NumberOfLeapYears(int startYear, int endYear) { var counter = 0; for (var year = startYear; year <= endYear; year++) counter += DateTime.IsLeapYear(year) ? 1 : 0; return counter; } So if I have startDate = "10/16/2006" and endDate = "4/18/2004" I should only have 1 leap year (2000) in result. Another words startDate's Year and endDate's year should not be calculated, only years in between. Thanks in advance for your help.
Tags (comma-separated)
Save Edits
Cancel