void main() { // Устанавливаем автомат в начальное состояние State_t state = s0; // Цикл выполняется, пока автомат не придет в конечное состояние sX while(state != sX) { // Ждем, пока не произойдет событие e0(); switch(state) { case s0: if(/* Проверка входных переменных для первой дуги */) { // Выполнение выходных воздействий zN(); ... zM(); // Переход в новое состояние I state = sI; } else if ... break; ... case sX: ... break; } } }