Skip to content

eraga0423/Chain

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Этот проект представляет собой генератор текста на основе цепей Маркова. Он позволяет анализировать входной текст и генерировать новый текст, основываясь на вероятностных переходах между словами.

Особенности

  • Принимает текстовый ввод из файла или стандартного ввода.
  • Генерирует текст с заданным количеством слов.
  • Использует префиксы заданной длины для построения цепей Маркова.
  • Поддерживает настройку начального префикса.

Установка

  1. Скачайте или клонируйте репозиторий.
    git clone https://github.com/eraga0423/Chain
  2. Убедитесь, что у вас установлен Go версии 1.18 или выше.

Компиляция

Скомпилируйте проект с помощью команды:

go build -o markovchain

Использование

./markovchain [-w <N>] [-p <S>] [-l <N>] < input.txt

Параметры:

  • -w <N>: Максимальное количество слов в сгенерированном тексте (по умолчанию: 100).
  • -p <S>: Начальный префикс текста.
  • -l <N>: Длина префикса (по умолчанию: 2).
  • --help: Показать справку.

Пример

cat the_great_gatsby.txt | ./markovchain -w 50 -l 3

Этот пример сгенерирует текст длиной 50 слов с использованием префиксов длиной 3 на основе текста "The Great Gatsby".

Структура проекта

  • main.go: Точка входа в приложение. Обрабатывает аргументы командной строки и запускает основные функции.
  • flags.go: Определяет флаги командной строки.
  • helpers.go: Содержит вспомогательные функции, включая вывод справки.
  • fileReader.go: Обрабатывает ввод текста из файла или стандартного ввода.
  • markovchain.go: Основная логика генерации текста с использованием цепей Маркова.
  • the_great_gatsby.txt: Пример текстового файла для анализа.

Лицензия

Этот проект предоставляется "как есть" без какой-либо гарантии. Свободен для использования в образовательных целях.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages