Skip to content

Multifunctional Turing machine emulator written in the Qt framework

License

Notifications You must be signed in to change notification settings

Irval1337/TuringMachine

Repository files navigation

TuringMachine

Многофункциональный эмулятор машины Тьюринга, написанный на фреймворке Qt. Основные возможности:

  1. Сохранение условия решаемой задачи и комментариев к таблице состояний
  2. Файловая система, основанная на формате JSON. Программа способна экспортировать и импортировать таблицу состояний, входную строку, условие задачи и комментарии
  3. Проверка строки на соответствие указанному алфавиту, отлавливание ошибок в заполнении таблицы состояний
  4. Автоматическое воспроизведение алгоритма с анимацией, а также настройка скорости выполнения
  5. Ручная прокрутка ленты
  6. Размеры элементов формы могут динамически изменятся вместе с самим окном

Формат заполнения таблицы состояний:

{letter?}{move?}{condition?}

  • {letter} - буква, которая будет записана в текущую ячейку ленты (_ - пустой символ)
  • {move} - направление движения головки машины (< - влево, > - вправо)
  • {condition} - номер следующего состояния. Формат: Q{num}. Завершиние программы - !

Скриншоты работы: example_1

About

Multifunctional Turing machine emulator written in the Qt framework

Topics

Resources

License

Stars

Watchers

Forks