Это python Как раз в эту ночь мы пересекли линию Дат. Вы, наверное, слыхали, молодой человек, что море в этом месте ничего особенного не представляет и самую линию увидеть можно только на карте. Но для удобства плавания как раз тут проделывают некоторые фокусы с календарем: при плавании с запада на восток два дня считают тем же числом, а при плавании с востока на запад проделывают обратное действие – один день вовсе пропускают и вместо «завтра» считают сразу «послезавтра».
Напишите программу для определения даты.
Формат ввода
Вводится строка – направление движения – с запада на восток или с востока на запад, и число – дата.
Формат вывода
Если плывем с запада на восток и число может быть датой (то есть находится в диапазоне от 1 до 31), то вывести это число и OK. Если плывем с востока на запад и число может быть датой, то вывести это число плюс 2 дня, но так, чтобы число снова было датой. Считать, что в месяце 31 день. Если что-то не сложилось, вывести: Ошибочка у вас.
Пример 1
Ввод Вывод
с запада на восток
12
12 OK
Пример 2
Ввод Вывод
с запада на восток
42
Ошибочка у вас.
Пример 3
Ввод Вывод
с востока на запад
30
1
Протабулируйте всё сами, если будут ошибки, так как сайт ужасен для передачи кода.
def dateserializer(ft, dt):
if not (1 <= dt <= 31):
return "Ошибочка у вас."
if ft == "с запада на восток":
return f"{dt} OK"
elif ft == "с востока на запад":
if dt + 2 > 31:
return (dt + 2) - 31
return dt
fromto = input("Откуда и куда: ").lower().strip()
date = int(input("Дата: "))
ifcan = dateserializer(fromto, date)
print(ifcan)