Ввод даты и вывод следующей за ней

Артур

Новичок
Пользователь
Май 6, 2020
4
0
1
Ввести с клавиатуры дату в формате день.месяц.год, например 10.03.2018
Вывести на экран следующую за ней дату в аналогичном формате


Пример:
1) 12.09.2000 -> 13.09.2000
2) 31.03.2009 -> 01.04.2009
3) 31.12.2010 -> 01.01.2011
4) 28.02.2005 -> 01.03.2005
5) 28.02.2000 -> 29.02.2000
и т. п.


Для выполнения задания не использовать
библиотеки time, datetime и подобные им
Огрничиться условными операторами.

Я написал код но у меня рабочий только декабрьский месяц, остальные не работают не могу понять в чём причина (я новичок в этом). Подскажите пожалуйста!!!
 

Вложения

  • рабочий.txt
    826 байт · Просмотры: 13

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
можете на примере одного месяца показать мне как должна выглядеть рабочая конструкция " if, elif. else", я уже не знаю как действовать, пробовал по разному то код крашется то на одном и том-же результате??
Вот пример:
Python:
d, m, y = input('Введите число месяц год: ').split()
d, m, y = int(d), int(m), int(y)
print(f'Итак, вы ввели {d:0>2}.{m:0>2}.{y}')

month_days = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]

if d >= month_days[m - 1]:
    if m < 12:
        d1, m1, y1 = 1, m + 1, y
    else:
        d1, m1, y1 = 1, 1, y + 1

else:
    d1, m1, y1 = d + 1, m, y

print(f'А через день будет {d1:0>2}.{m1:0>2}.{y1}')
 
  • Мне нравится
Реакции: Артур

borntohack

змееуст
Команда форума
Модератор
Апр 22, 2020
78
62
18
39
Москва, РФ
Проблема стала быть очень типичной. В последнее время сталкиваюсь с ней всё чаще.
Python не понимает разговорный русский язык.
Ему нельзя сказать "если, если, если, иначе" правильнее говорить "если, а если, а если, иначе"

В вашем коде конструкция else относится только к последнему if. Таким образом, если 31 декабря - то как написано, иначе d+1,m,y
И не важно что именно вы проверяли раньше.
Обратите внимание на конструкцию elif
 
  • Мне нравится
Реакции: Артур

borntohack

змееуст
Команда форума
Модератор
Апр 22, 2020
78
62
18
39
Москва, РФ
Обратите внимание на конструкцию elif
Python:
if a<b:
    some
elif b<a:
    some2
else:
    some3
 
  • Мне нравится
Реакции: Артур

Артур

Новичок
Пользователь
Май 6, 2020
4
0
1
Можете подсказать как правильно ввести " а если " , я не поникаю как это правильно реализовать в коде.?
 

Артур

Новичок
Пользователь
Май 6, 2020
4
0
1
можете на примере одного месяца показать мне как должна выглядеть рабочая конструкция " if, elif. else", я уже не знаю как действовать, пробовал по разному то код крашется то на одном и том-же результате??
 
D

deleted-user

Guest
можете на примере одного месяца показать мне как должна выглядеть рабочая конструкция " if, elif. else", я уже не знаю как действовать, пробовал по разному то код крашется то на одном и том-же результате??
если if или elif верно, то дальше elif уже не проверяется
if проверяется всегда
 
Последнее редактирование модератором:

Артур

Новичок
Пользователь
Май 6, 2020
4
0
1
Всем огромное спасибо за помощь!!!☺
 

Форум IT Специалистов