
Программирование, python (хотя бы 2-3 задания) 1 Текстовый файл содержит только заглавные буквы
латинского алфавита (ABC…Z). Определите символ, который чаще всего встречается в файле сразу после буквы A.Например, в тексте ABCAABADDD после буквы A два раза стоит B, по одному разу — A и D. Для этого текста ответом будет B.2 Текстовый файл содержит только заглавные буквы латинского алфавита (ABC…Z). Определите символ, который чаще всего встречается в файле после двух одинаковых символов.Например, в тексте CCCBBABAABCC есть комбинации CCC, CCB, BBA и AAB. Чаще всего — 2 раза — после двух одинаковых символов стоит B, в ответе для этого случая надо написать B.3 Текстовый файл содержит строки различной длины. Строки содержат только заглавные буквы латинского алфавита (ABC…Z). Определите количество строк, в которых буква E встречается чаще, чем буква A.4. Текстовый файл состоит не более чем из символов X, Y, и Z. Определите максимальное количество идущих подряд символов, среди которых нет подстроки XZZY

Ответы на вопрос

Ответ:
1)
from collections import Counter
f = open('НАЗВАНИЕ ФАЙЛА')
s = f.readline()
x = []
for i in range(len(s)-1):
if s[i] == 'A':
x.append(s[i+1])
print(Counter(x).most_common()[0][0])
2)
from collections import Counter
f = open('НАЗВАНИЕ ФАЙЛА')
s = f.readline()
x = []
for i in range(len(s)-2):
if s[i] == s[i+1]:
x.append(s[i+2])
print(Counter(x).most_common()[0][0])
3)
f = open('НАЗВАНИЕ ФАЙЛА')
s = f.readlines()
c = 0
for i in range(len(s)):
if s[i].count('E') > s[i].count('A'):
c += 1
print(c)



1. Для решения этой задачи можно использовать словарь, в котором ключами будут являться символы, а значениями - количество их вхождений после символа "A". Пройдемся по всем символам в файле и для каждого символа после "A" увеличим соответствующее значение в словаре. После этого найдем символ с максимальным значением и вернем его.
```python def find_most_common_symbol_after_A(file_path): with open(file_path, 'r') as file: text = file.read() symbols_count = {} for i in range(len(text)-1): if text[i] == 'A': symbol = text[i+1] if symbol in symbols_count: symbols_count[symbol] += 1 else: symbols_count[symbol] = 1 most_common_symbol = max(symbols_count, key=symbols_count.get) return most_common_symbol ```
2. Для решения этой задачи можно использовать словарь, в котором ключами будут являться комбинации из двух символов, а значениями - количество их вхождений в файле. Пройдемся по всем символам в файле, начиная с третьего, и для каждой комбинации из двух символов увеличим соответствующее значение в словаре. После этого найдем комбинацию с максимальным значением и вернем ее.
```python def find_most_common_symbol_after_duplicates(file_path): with open(file_path, 'r') as file: text = file.read() symbols_count = {} for i in range(2, len(text)): combination = text[i-2:i] if combination in symbols_count: symbols_count[combination] += 1 else: symbols_count[combination] = 1 most_common_symbol = max(symbols_count, key=symbols_count.get) return most_common_symbol ```
3. Для решения этой задачи просто пройдемся по каждой строке в файле и для каждой строки подсчитаем количество вхождений буквы "E" и буквы "A". Если количество вхождений буквы "E" больше, чем количество вхождений буквы "A", увеличим счетчик. В конце вернем значение счетчика.
```python def count_lines_with_more_E_than_A(file_path): with open(file_path, 'r') as file: lines = file.readlines() count = 0 for line in lines: if line.count('E') > line.count('A'): count += 1 return count ```
4. Для решения этой задачи можно использовать цикл, в котором будем проходиться по каждому символу в файле. Если текущий символ не равен 'X', 'Z', 'Z' или 'Y', увеличим счетчик текущей последовательности символов. Если текущий символ равен 'X', 'Z', 'Z' или 'Y', обновим максимальное значение счетчика, если оно больше текущего значения, и сбросим счетчик.
```python def find_max_consecutive_symbols(file_path): with open(file_path, 'r') as file: text = file.read() max_count = 0 count = 0 for symbol in text: if symbol not in ['X', 'Z', 'Z', 'Y']: count += 1 if count > max_count: max_count = count else: count = 0 return max_count ```


Похожие вопросы
Топ вопросов за вчера в категории Информатика







Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili