Программа для определения високосного года — это одна из самых популярных программ, которую должен знать каждый начинающий программист на Python. Я объяснил эту программу очень просто, используя знания о високосных годах и способах их определения.
Что такое високосный год в Python? Високосный год — это год, который точно делится на 4. В таком году 366 дней, и к нему добавляется один дополнительный день. Однако есть одно исключение: если год делится на 100, то он также должен делиться на 400, чтобы считаться високосным.
Кроме того, если год делится на 4, но не делится на 100, то он тоже считается високосным. Давайте создадим функцию, которая будет принимать год и определять, является ли он високосным.
def is_leap_year(year): if year % 4 == 0: if year % 100 == 0: if year % 400 == 0: print(year, "is a leap year") else: print(year, "is not a leap year") else: print(year, "is a leap year") else: print(year, "is not a leap year")
Теперь вызовите функцию is_leap_year() со значением 2000, как показано ниже.
is_leap_year(2000)
Из выходных данных вы видите, что когда в функцию is_leap_year() передаётся 2000 год, она возвращает, что 2000 год — високосный.
Позвольте мне объяснить часть кода. Вы передали 2000 год в функцию is_leap_year(2000), которая содержит несколько операторов if для определения, является ли год високосным.
Сначала проверяется, делится ли год на 4: if Year% 4 == 0. Если да, то проверяется, делится ли он также на 100: if Year% 100 == 0. Если делится, то проверяется, делится ли он снова на 400: if Year% 400 == 0. И если это так, то подтверждается, что год високосный.
В противном случае, если ни одно из условий не выполнено, то год не является високосным. Таким образом, в этом коде вы создали функцию is_leap_year(), которая определяет, является ли год високосным.
С использованием функции с пользовательским вводом
В предыдущем разделе вы создали функцию под названием is_leap_year(). В этой функции вам нужно будет вручную указать год, но также есть возможность получить ввод от пользователя. Для этого потребуется внести небольшие изменения в функцию.
def is_leap_year(): year = int(input("Enter the year: ")) if year % 4 == 0: if year % 100 == 0: if year % 400 == 0: print(year, "is a leap year") else: print(year, "is not a leap year") else: print(year, "is a leap year") else: print(year, "is not a leap year")
Теперь просто вызовите функцию с любым значением параметра, как показано ниже.
is_leap_year()
При запуске кода, который вы видите выше, программа попросит вас ввести год. После этого она определит, является ли этот год високосным.
Из приведённого выше вывода вы можете понять, что функция is_leap_year() запрашивает год. Если ввести 1900 год, она проверит его и вернёт результат: «1900 год не високосный».
Чтобы получить год от пользователя, функцию нужно изменить. Для этого в начале функции следует добавить строку: ‘year = int(input(«Введите год:»))’. Это позволит получить ввод от пользователя.