Информатика 15 дней назад Saigaku

текстовый файл 24-s1.txt состоит не более чем из 10^6 заглавных латинских букв (A..Z). Текст разбит на строки различной длины. Определите символ, который чаще всего встречается в файле и посчитайте сколько раз он встречается.

Дополнительные материалы:
Ответ
1
Шист

Ответ:

Конкретно для файла, прикреплённого выше, ответ следующий:

"Самый распространённый символ(или один из самых распространённых) в тексте: U

Данный символ встречался в тексте 38824 раз"

Объяснение:

Исходный код программы, написанный на языке Python, который может решить эту задачу, будет описан ниже. Для решения нам понадобится такой контейнер, как словарь, который способен хранить пары "ключ-значение", чтобы мы могли хранить для каждой буквы её количество. Также будет прикреплён файл с исходным кодом (main.txt) и скриншот работы программы.

Исходный код:

# Открываем файл для чтения

f = open('24-s1.txt', 'r')

# Контейнер (словарь) для всех символов и их количеств в тексте

chars_from_text = {}

# Интересующий нас символ

need_char = ' '

# Интересующее нас количество вышеупомянутого символа

need_char_amount = 0

# Текущее значение максимального количества среди всех символов

current_max_amount = 0

# Для каждой строки line из файла f делаем следующее...

for line in f:

   for char in line:  # Для каждого символа char в строке line делаем следующее...

       if char in chars_from_text:  # Если символ char уже есть в словаре chars_from_text, то...

           chars_from_text[char] += 1  # Прибавляем к его количеству один и...

           if chars_from_text[char] > current_max_amount:  # Если это количество больше текущего известного максимального количества, то...

               current_max_amount = chars_from_text[char]  # Фиксируем это количество как максимальное, известное на данный момент

               need_char = char  # Запоминаем этот символ

       else:  # Если же символа char ещё нету в словаре chars_from_text, то добавляем в словарь новый символ и ставим ему количество 1

           chars_from_text[char] = 1

print("Самый распространённый символ(или один из самых распространённых) в тексте:", need_char)

print("Данный символ встречался в тексте", current_max_amount, "раз")

Дополнительные материалы:
Saigaku: Спасибо!