Главная / Калькуляторы / Онлайн-симулятор конечного автомата (FSM)
Бесплатные онлайн-инструменты

Онлайн-симулятор конечного автомата (FSM)

Симулируйте детерминированный конечный автомат: введите правила, начальное состояние и строку — получите путь и финальное состояние. Обработка выполняется ло…

Начать работу

Пример работы

Пусть заданы правила:

q0,0,q0
q0,1,q1
q1,0,q0
q1,1,q1

Начальное состояние q0, входная строка 1011. Ожидаемый путь: q0 → q1 → q0 → q1 → q1, финальное состояние q1.

Ограничения и особенности

  • Количество правил: от 1 до 200.
  • Имена состояний: непустые, до 50 символов.
  • Входной символ — ровно один символ Unicode (кодовая точка).
  • Для каждой пары (состояние, символ) допускается только одно правило; дубликаты отклоняются.
  • Входная строка обрабатывается по одному символу Unicode, максимальная длина — 10000 UTF-16 кодовых единиц.
  • Если переход для текущего состояния и символа отсутствует, симуляция останавливается с ошибкой на этом символе.
  • Инструмент не поддерживает принимающие состояния, эпсилон-переходы, недетерминизм, преобразование в регулярное выражение, минимизацию или диаграммы.

Часто задаваемые вопросы

Что делать, если я ввёл дублирующееся правило?

Симулятор отклонит дубликат, так как для каждой пары (состояние, символ) допускается только одно правило. Проверьте таблицу переходов и удалите повторяющиеся строки.

Почему симуляция останавливается с ошибкой?

Это происходит, когда для текущего состояния и очередного символа входной строки нет подходящего правила. Убедитесь, что все необходимые переходы заданы.

Можно ли использовать пробелы в именах состояний?

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

Проверка результата

Сравните полученный путь с ожидаемым. Для длинных входных строк сначала протестируйте короткий фрагмент, чтобы убедиться в корректности правил.

Обработка выполняется локально в вашем браузере.