Добавил:
study@slavapmk.ru Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Все Лекции

.pdf
Скачиваний:
0
Добавлен:
12.05.2026
Размер:
15.98 Mб
Скачать

Шаблоны классов

Стек (память LIFO)

Обычное множество операций над стеком:

Push – добавить новый элемент в стек

Pop – удалить верхний элемент из стека

Empty – проверить, не пуст ли стек

class Stack

{

// implementation int top;

int S[100]; public:

//interface Stack() : top(0) { }

void push ( int V ) { S[top++]=V; }

int pop (void) { top--;return S[top+1]; }

//other operations

...

}

10

Шаблоны классов

11

Требования на параметры настройки

12

Концепт – именованное множество требований

Нетиповые параметры шаблона

14

Автоматное программирование

Многие

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

15

Автоматное программирование

При анализе таких методов можно применять конечные автоматы Мура.

Состояние выходов такого автомата зависит от текущего состояния.

16

Автоматное программирование

В качестве входных символов на практике можно рассматривать результаты проверки некоторых условий.

Такие процедуры называют

действиями.

Автоматное программирование

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

Здесь состояния идентифицируются порядковыми номерами, а воздействия - буквами

18

Автоматное программирование

Альтернатива – автомат Мили.

Его выходной сигнал зависит от последнего совершённого перехода, поэтому то, что будет на выходе, записывается над соответствующей стрелкой.

В теории автомат Мили отличается тем, что результат может зависеть от выбранного перехода.

На практике действия в таблице состояний и переходов могут ассоциироваться либо с состояниями (с вершинами графа, автомат Мура), либо с переходами (с дугами графа, автомат Мили).

19