Skip to content

LevTrachuk/Laboratory_Work_3

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 

Repository files navigation

Этот код реализует конечный автомат (finite state machine, FSM) на языке C++. Вот его функционал:

  1. Определение класса State, представляющего состояние автомата. У состояния есть уникальный идентификатор _id и флаг _isTerminal, указывающий, является ли состояние терминальным.

  2. Определение класса TransitionFunction, представляющего функцию перехода между состояниями. Она содержит начальное состояние _from, конечное состояние _to и триггер _trigger.

  3. Определение класса Automata, представляющего сам конечный автомат. Он содержит вектор состояний _states, вектор переходных функций _functions, алфавит _alphabet, начальное состояние _initialState и текущее состояние _currentState. Он также имеет методы для выполнения переходов по входным символам (triggerTransition) и чтения последовательности входных символов (Read).

  4. В функции main создаются объекты состояний, переходных функций и автомата. Затем передается строка символов для чтения, преобразуемая в вектор символов, и проверяется, может ли автомат прочитать эту строку.

В данном конкретном случае автомат читает строку "bbabbbbabab" и возвращает true, если строка принимается, и false в противном случае.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages