Другие языки программирования и технологии

Написать нормальный алгоритм Маркова

Помогите, пожалуйста! Уже несколько дней ломаю голову.
Во входном тексте подсчитать количество слов. Считаем, что их не может быть больше 15
В алфавите использую символы "а" и "b", а также цифры от 0 до 9 для подсчёта.
Что именно ты называешь словом?

Если слово - последовательность символов, ограниченная пробелом или концом строки, то почему в алфавите отсутствует символ 'пробел'? Алфавит в НАМ - это ВСЕ символы, которые могут встретиться в исходной строке.

А если слово - это что-то иное, то что именно?
ТВ
Товары В Алматы Автоаксессуары
90 050
Лучший ответ
a и b сидели на трубе...)
KH
Kenshin Himura
25 676
Нейросеть в помощь?
Товары В Алматы Автоаксессуары Что-ж, попробуй... А мы полюбуемся на очередной дебилизм нейросети. Все копипасты на Ответах ответов ChatGPT на тему нормальных алгорифмов Маркова - феерический бред.
Вот точный ответ на пайтоне броу:

python
Copy code
def markov_algorithm(text):
state = "start"
count = 0
word_length = 0

for char in text:
if state == "start":
if char == " ":
continue
elif char.isalnum():
state = "inside_word"
word_length += 1
else:
state = "error"
break
elif state == "inside_word":
if char == " ":
count += 1
state = "end_word"
word_length = 0
elif word_length < 15 and char.isalnum():
word_length += 1
else:
state = "error"
break
elif state == "end_word":
if char == " ":
continue
elif char.isalnum():
state = "inside_word"
word_length += 1
else:
state = "error"
break
else:
state = "error"
break

if state == "inside_word":
count += 1

if state == "error":
print("Ошибка!")
else:
print(f"Количество слов в тексте: {count}")
Вы можете вызвать функцию markov_algorithm с текстом в качестве аргумента, например:

python
Copy code
text = "Привет, это текст. Слова в нем нужно посчитать. Считаем до 15 символов."
markov_algorithm(text)
Этот код выведет в консоль количество слов в тексте.