2016-01-16 2 views
1

В принципе, каждый раз, когда пользователь дает несколько дней, например 10, а начальный год - 2008 год, он будет конвертировать дни и добавить его в годы, чтобы он все равно был в 2008 году, но как это сделать i учетная запись високосного года? Например, если я вхожу 848 с 2008 он должен быть 2010, но его 2011. До сих пор, что у меня есть:Учет високосного года в простой математической программе

def year_checker(days, year): 
    convert = days // 365 
    year = year + convert 
    return year 

Этот вопрос является отличается от некоторых, потому что он путает при попытке найти дни между двумя високосных ,

+0

848 // 365 дает 2 в любом случае. Как он возвращается в 2011 году? – jkschin

+0

Я вижу это, но когда я пытаюсь что-то вроде 1980 года, чтобы понравиться 2008 году так високосный год к следующему високовому году, он возвращается в 2009 году – user3373402

ответ

0

https://support.microsoft.com/en-us/kb/214019

Эта статья расскажет вам о том, как рассчитать високосный год. Вы можете реализовать эту формулу и проверить високосные годы, а затем вычесть 366 за каждый високосный год. Надеюсь, теперь это поможет. Я улучшу этот ответ с помощью примера кода позже.

Смежные вопросы