
Напишите функцию output(year), которая для заданного года year (тип int) возвращает чего было
больше воскресений или сред в этом году. Функция должна выдавать: 0 - если было больше воскресений; 1 - если больше сред; 2 - если количество воскресений такое же, как и количество сред. (Python)

Ответы на вопрос

year = int(input("Напишите год"))
def YearSorW():
day = year*365
W = day/7
S = day/7
if W < S:
output = 0
elif W > S:
output = 1
else:
output = 2
return output
print(YearSorW())



Для решения этой задачи вам потребуется использовать модуль datetime
в Python. Вот функция output(year)
, которая определяет, что больше в заданном году, воскресений или сред:
pythonimport datetime
def output(year):
# Инициализируем счетчики для воскресений и сред
sundays = 0
wednesdays = 0
# Создаем объект date для 1 января заданного года
current_date = datetime.date(year, 1, 1)
# Проверяем каждый день в году
while current_date.year == year:
if current_date.weekday() == 6: # 6 соответствует воскресенью
sundays += 1
elif current_date.weekday() == 2: # 2 соответствует среде
wednesdays += 1
current_date += datetime.timedelta(days=1)
# Определяем результат на основе счетчиков
if sundays > wednesdays:
return 0
elif sundays < wednesdays:
return 1
else:
return 2
# Пример использования
year = 2023
result = output(year)
if result == 0:
print(f"В году {year} больше воскресений.")
elif result == 1:
print(f"В году {year} больше сред.")
else:
print(f"В году {year} равное количество воскресений и сред.")
Эта функция создает объект date
для 1 января заданного года и затем проверяет каждый день в году, увеличивая счетчики воскресений и сред. В конце функции она сравнивает значения счетчиков и возвращает соответствующее значение в соответствии с вашим условием.



Для решения этой задачи вам потребуется определить, сколько воскресений и сред в данном году, и затем сравнить их количество. Вот функция, которая делает это в Python:
pythonimport datetime
def output(year):
# Инициализируем счетчики для воскресений и сред
sundays = 0
wednesdays = 0
# Создаем объект datetime для 1 января заданного года
date = datetime.date(year, 1, 1)
# Проходим по всем дням года, увеличивая счетчики
while date.year == year:
if date.weekday() == 6: # Воскресенье (0 - понедельник, 6 - воскресенье)
sundays += 1
elif date.weekday() == 2: # Среда (0 - понедельник, 2 - среда)
wednesdays += 1
date += datetime.timedelta(days=1)
# Сравниваем количество воскресений и сред
if sundays > wednesdays:
return 0
elif sundays < wednesdays:
return 1
else:
return 2
# Пример использования функции
year = 2023
result = output(year)
if result == 0:
print(f"В году {year} больше воскресений.")
elif result == 1:
print(f"В году {year} больше сред.")
else:
print(f"В году {year} одинаковое количество воскресений и сред.")
Эта функция сначала подсчитывает количество воскресений и сред в заданном году, а затем сравнивает их количество и возвращает соответствующий результат.


Похожие вопросы
Топ вопросов за вчера в категории Информатика







Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili