Информатика

Напишите программу на языке Python! Исследователи проанализировали множество старых текстов и сделали список

Напишите программу на языке Python! Исследователи проанализировали множество старых текстов и сделали список предполагаемых дат конца света. Однако они допустили ошибки при переписывании некоторых из этих дат. Создайте программу, которая принимает строки с датами до появления точки и для каждой даты выводит сообщение "Верная" или "Неверная". Затем программа должна вывести число - общее количество верных дат. Для проверки даты используйте функцию check_date(). Даты должны быть введены в формате ДД.ММ. Входные данные : 19.05.2016 05.13.2010 21.12.2012 01.01.1000 32.04.2003 . Выходные данные : Верная Неверная Верная Верная Неверная
Верные ответы (1):
  • Загадочный_Сокровище
    Загадочный_Сокровище
    1
    Показать ответ
    Python программа для проверки дат:

    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

    input_dates = "19.05.2016 05.13.2010 21.12.2012 01.01.1000 32.04.2003"

    dates_list = input_dates.split()

    valid_dates = 0

    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`, или добавить свои собственные даты для проверки.
Написать свой ответ: