Напишите программу на языке Python! Исследователи проанализировали множество старых текстов и сделали список
Напишите программу на языке Python! Исследователи проанализировали множество старых текстов и сделали список предполагаемых дат конца света. Однако они допустили ошибки при переписывании некоторых из этих дат. Создайте программу, которая принимает строки с датами до появления точки и для каждой даты выводит сообщение "Верная" или "Неверная". Затем программа должна вывести число - общее количество верных дат. Для проверки даты используйте функцию check_date(). Даты должны быть введены в формате ДД.ММ. Входные данные : 19.05.2016 05.13.2010 21.12.2012 01.01.1000 32.04.2003 . Выходные данные : Верная Неверная Верная Верная Неверная
python
def check_date(date):
day, month, year = map(int, date.split("."))
if (day > 0 and day <= 31) and (month > 0 and month <= 12):
return True
else:
return False
for date in dates_list:
if check_date(date):
print(date, "- Верная дата")
valid_dates += 1
else:
print(date, "- Неверная дата")
print("Общее количество верных дат:", valid_dates)
Объяснение:
В данной программе мы сначала определяем функцию `check_date()`, которая принимает строку с датой и проверяет, является ли она верной. Для этого мы разделяем строку на день, месяц и год, используя функцию `split()` и преобразуя их в целые числа с помощью функции `map(int, date.split("."))`. Затем мы проверяем, что день находится в диапазоне от 1 до 31 и месяц в диапазоне от 1 до 12. Если оба условия выполняются, функция возвращает `True`, иначе - `False`.
Затем мы определяем строку `input_dates`, содержащую все входные данные - даты, разделенные пробелами. Мы разделяем эту строку, чтобы получить список отдельных дат с помощью функции `split()`.
Далее мы создаем переменную `valid_dates`, которая будет хранить количество верных дат, и итерируемся по каждой дате в списке `dates_list`. Для каждой даты мы вызываем функцию `check_date()` и, если она возвращает `True`, выводим сообщение "Верная дата", иначе - "Неверная дата". Если дата верна, увеличиваем счетчик `valid_dates` на 1.
В конце программы выводим общее количество верных дат.
Пример:
19.05.2016 - Верная дата
05.13.2010 - Неверная дата
21.12.2012 - Верная дата
01.01.1000 - Верная дата
32.04.2003 - Неверная дата
Общее количество верных дат: 3
Совет:
Чтобы лучше понять программу, вы можете поэкспериментировать с разными входными данными и увидеть, как она работает. Попробуйте изменить список дат, введенных в строку `input_dates`, или добавить свои собственные даты для проверки.
Все ответы даются под вымышленными псевдонимами! Здесь вы встретите мудрых наставников, скрывающихся за загадочными никами, чтобы фокус был на знаниях, а не на лицах. Давайте вместе раскроем тайны обучения и поищем ответы на ваши школьные загадки.
Объяснение:
В данной программе мы сначала определяем функцию `check_date()`, которая принимает строку с датой и проверяет, является ли она верной. Для этого мы разделяем строку на день, месяц и год, используя функцию `split()` и преобразуя их в целые числа с помощью функции `map(int, date.split("."))`. Затем мы проверяем, что день находится в диапазоне от 1 до 31 и месяц в диапазоне от 1 до 12. Если оба условия выполняются, функция возвращает `True`, иначе - `False`.
Затем мы определяем строку `input_dates`, содержащую все входные данные - даты, разделенные пробелами. Мы разделяем эту строку, чтобы получить список отдельных дат с помощью функции `split()`.
Далее мы создаем переменную `valid_dates`, которая будет хранить количество верных дат, и итерируемся по каждой дате в списке `dates_list`. Для каждой даты мы вызываем функцию `check_date()` и, если она возвращает `True`, выводим сообщение "Верная дата", иначе - "Неверная дата". Если дата верна, увеличиваем счетчик `valid_dates` на 1.
В конце программы выводим общее количество верных дат.
Пример:
Совет:
Чтобы лучше понять программу, вы можете поэкспериментировать с разными входными данными и увидеть, как она работает. Попробуйте изменить список дат, введенных в строку `input_dates`, или добавить свои собственные даты для проверки.