Вопрос задан 22.06.2023 в 13:01. Предмет Информатика. Спрашивает Смирнов Евгений.

Напишите функцию output(year), которая для заданного года year (тип int) возвращает чего было

больше воскресений или сред в этом году. Функция должна выдавать: 0 - если было больше воскресений; 1 - если больше сред; 2 - если количество воскресений такое же, как и количество сред. (Python)
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Новахович Даша.

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())

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для решения этой задачи вам потребуется использовать модуль datetime в Python. Вот функция output(year), которая определяет, что больше в заданном году, воскресений или сред:

python
import 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 января заданного года и затем проверяет каждый день в году, увеличивая счетчики воскресений и сред. В конце функции она сравнивает значения счетчиков и возвращает соответствующее значение в соответствии с вашим условием.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для решения этой задачи вам потребуется определить, сколько воскресений и сред в данном году, и затем сравнить их количество. Вот функция, которая делает это в Python:

python
import 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} одинаковое количество воскресений и сред.")

Эта функция сначала подсчитывает количество воскресений и сред в заданном году, а затем сравнивает их количество и возвращает соответствующий результат.

0 0

Похожие вопросы

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

Последние заданные вопросы в категории Информатика

Задать вопрос