• 1
    Ввод и вывод данных
    • Задачи
  • 2
    Условия
    • Задачи
  • 3
    Цикл for
    • Задачи
  • 4
    Строки
    • Задачи
  • 5
    Цикл while
    • Задачи
  • 6
    Списки
    • Задачи
  • 7
    Двумерные массивы
    • Задачи
  • 8
    Словари
    • Задачи
  • 9
    Множества
    • Задачи
  • 10
    Функции и рекурсия
    • Задачи
  • к

Занятие 3. Цикл for

Уровень сложности:

иконка человека красный иконка человека белая иконка человека зеленая Pythonlib

Задача«Повторяющиеся символы»

Вы работаете в отделе контроля качества на заводе по производству электроники. Каждому устройству присваивается уникальный серийный номер, состоящий из латинских букв и цифр. Недавно была выдвинута гипотеза, что серийные номера, в которых много повторяющихся символов, могут быть менее надежными или чаще подделываться.

Ваша задача — написать программу для первичного анализа. Программа должна определять, сколько различных символов (букв или цифр) в серийном номере встречаются более одного раза. Это поможет автоматически помечать потенциально "подозрительные" номера для дальнейшей проверки.

Технические требования:

  1. Программа получает на вход одну строку — серийный номер.
  2. При подсчете регистр букв не должен иметь значения, то есть 'a' и 'A' — это один и тот же символ.
  3. Входная строка гарантированно содержит только латинские буквы (a-z, A-Z) и цифры (0-9).
  4. Программа должна вывести одно целое число — количество уникальных символов, которые повторяются в строке.

Формат ввода

Серийный номер продукта (строка, str).

Формат Вывода

Количество различных символов, которые встречаются в строке более одного раза (целое число, int).

Пример

Ввод

aBca11

Вывод

2

Подсказка

Тут подсказки не будет, решай сам!

main.py
Тест 1
Тест 2
Тест 3
Тест 4
Тест 5
Тест 6
Тест 7
Тест 8
Тест 9
Тест 10
Решение разработчика
# Получаем входную строку от пользователя
input_string = input()

# Приводим всю строку к нижнему регистру, чтобы 'a' и 'A' считались одним и тем же символом
input_string = input_string.lower()

# Счетчик для символов, которые встречаются более одного раза
duplicate_count = 0
# Строка для хранения уже проверенных уникальных символов, чтобы не считать один и тот же символ дважды (например, в строке 'aaa' символ 'a' повторяется, но это всего 1 тип символа)
processed_characters = ""

# Начинаем цикл: перебираем каждый символ в полученной строке
for char in input_string:
    # Проверяем, обрабатывали ли мы уже этот тип символа ранее
    if char in processed_characters:
        # Если да, то мы его уже учли, поэтому переходим к следующему символу в строке
        continue

    # Если это новый для нас символ, считаем, сколько раз он встречается во всей строке
    if input_string.count(char) > 1:
        # Если символ встречается больше одного раза, увеличиваем наш счетчик дубликатов
        duplicate_count += 1
    
    # Добавляем текущий символ в строку уже обработанных, чтобы не проверять его снова
    processed_characters += char

# Выводим итоговый результат
print(duplicate_count)

🎉 Поздравляем! 🎉

Ты отлично справился с задачей! Это был непростой вызов, но ты нашёл правильное решение. Ты на шаг ближе к мастерству в программировании! Продолжай в том же духе, ведь каждый пройденный этап делает тебя ещё сильнее.

AD

Реклама

red-snake blue-snake green-snake

Запускаем ваш код...

Помощник ИИ

Привет! Я твой помощник по программированию. Задавай любые вопросы по Python, я могу рассказать о функциях, методах, обьяснить то, что тебе не понятно, а так же о текущей задаче!