Непейвода Н.Н. Программирование. Раздел 1

Непейвода Н.Н. Программирование. Страница 104

Современные методики программирования от состояний (напр., [86]) ба­зируются на таблицах состояний, подобных таблице состояний конечного автомата. Эти таблицы часто также представляются в виде графов, что осо­бенно удобно, когда не все возможные переходы между состояниями реали­зуемы. См., напр., рис. 3.1, где представлены и таблица, и граф.

На таблице состояний или на ее графовом аналоге все действия предпо­лагаются по умолчанию глобальными, и каждое действие соединено с распо­знаванием, какое из перечисленных на выходящих из него ребрах условий выполнено. В зависимости от того, какое из них выполнено, автомат пе­реходит в соответствующее состояние, которому опятьтаки, если оно не заключительное, сопоставлено действие и распознавание.

Прежде всего, отметим вариацию, отражающую различие автоматов Ми­ли и Мура в § А.4. Действия в диаграмме состояний и переходов могут ассоциироваться либо с состояниями (с вершинами графа), либо с перехода­ми. Ниже Вы увидите примеры, когда при программировании естественно возникают обе эти ассоциации.

Заметим, что естественно рассматривать таблицы состояний и переходов как недетерминированные, поскольку после выполнения действия вполне может оказаться истинно сразу несколько условий, соответствующих выхо­дящим ребрам.

Внимание!

В данном случае мы видим один из неистощимых источников ошибок в программах, который впервые заметил Д. Грис. Если по сути задачи нам все равно, какое из действий будет выполнено, а язык (как те стандартные языки, на которых обычно работают) заставляет детерминировать переходы, либо ранжировав их по порядку.; либо принудительно сделав их условия логи­чески противоречивыми, то при изменении программы очень часто можно натолкнуться на трудности, связанные с тем, что после изменения детер­минироватьто надо было подругому; но уже нельзя различить, какие из условий существенны, а какие вставлены лишь для детерминации.

Новости

  • 1
  • 2
Prev Next

Ракета "Ангара-А5В" в ближайшее десятилетие не полетит

24.01.2016

Ракета "Ангара-А5В" в ближайшее десятилетие не полетит

Роскосмос не планирует в течение ближайшего десятилетия осуществлять пуск тяжёлой ракеты-носителя А...

Ученые РФ опровергли выводы исследований о вреде ГМО

24.01.2016

Ученые РФ опровергли выводы исследований о вреде ГМО

Исследователи из Института проблем передачи информации (ИППИ РАН) проанализировали несколько самых п...

Летающие "Крокодилы"

24.01.2016

Летающие "Крокодилы"

20 удивительных фактов о боевом вертолете Ми-24.Этот вертолет стал таким же узнаваемым символом сове...

В Аргентине описали новый вид динозавра-гиганта

24.01.2016

О ранее неизвестном виде динозавра, относящемуся к инфраотряду зауроподов, рассказали аргентинские п...

Реклама