Вопрос задан 08.10.2026 в 06:08.
Предмет Информатика.
Спрашивает Базина Софья.
Python. Назовём пароль криптостойким, если выполнены 5 критериев: 1. Пароль содержит строчные латинские буквы. 2. Пароль содержит заглавные латинские буквы. 3. Пароль содержит цифры. 4. Пароль содержит символы: ! " # $ % & ' ( ) * + 5. Длина пароля не менее 8 символов. Требуется по данному паролю определить, сколько критериев криптостойкости выполнено. Входные данные: вводится одна строка, состоящая только из латинских букв, цифр и символов из условия. Количество символов в строке не превышает 100. Выходные данные: выведите количество критериев криптостойкости, которым удовлетворяет пароль.
Ответы на вопрос
Отвечает Таумарк Ренат.
Нужно проверить каждый из 5 критериев отдельно и посчитать, сколько из них выполнено.
Так как строка содержит только разрешённые символы, достаточно пройти по всем символам пароля и запомнить, встречались ли:
- строчные латинские буквы (a-z);
- заглавные латинские буквы (A-Z);
- цифры (0-9);
- специальные символы из набора !"#$%&'()*+.
Длину проверяем отдельно.
Решение на Python:
Python
password = input()
count = 0
has_lower = False
has_upper = False
has_digit = False
has_special = False
special = '!\"#$%&\'()*+'
for ch in password:
if 'a' <= ch <= 'z':
has_lower = True
elif 'A' <= ch <= 'Z':
has_upper = True
elif '0' <= ch <= '9':
has_digit = True
elif ch in special:
has_special = True
if has_lower:
count += 1
if has_upper:
count += 1
if has_digit:
count += 1
if has_special:
count += 1
if len(password) >= 8:
count += 1
Сложность алгоритма — O(n), где n — длина пароля. Поскольку длина строки не превышает 100 символов, такой способ легко укладывается в ограничения.
Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili

