Теория формальных языков, грамматик и автоматов. Ишакова Е.Н. - 49 стр.

UptoLike

Составители: 

49
4 Структурная организация данных
Основная часть данных хранится и обрабатывается в двух клас-
сах Grammar (грамматика) и FAutomat (конечный автомат), представ-
ленных в таблице 4.1.
Таблица 4.1 – Описание полей классов
Поле Тип Назначение
Класс Grammar
N charset
множество нетерминалов грамматики
T charset
множество терминалов грамматики
P rulemap
множество правил грамматики
S char
начальный символ грамматики
Класс FAutomat
*G Grammar
связанная с данным автоматом граммати-
ка
Q charset
множество состояний автомата
T charset
множество входных символов автомата
F ftable
таблица правил автомата
H char
начальное состояние автомата
Z charset
множество конечных состояний автомата
MustPaint int
флаг отрисовки графа
Для хранения таблицы правил конечного автомата использу-
ется структура:
struct posit{
long x, y;
long double a;
};
Для создания отображения используется класс компаратора:
struct rulecmp{
bool operator()(const char c1, const char c2){
return (c1 < c2);
}
};
7
Лист
     4 Структурная организация данных

     Основная часть данных хранится и обрабатывается в двух клас-
сах Grammar (грамматика) и FAutomat (конечный автомат), представ-
ленных в таблице 4.1.

     Таблица 4.1 – Описание полей классов

  Поле            Тип                        Назначение

                             Класс Grammar
    N           charset      множество нетерминалов грамматики
    T           charset      множество терминалов грамматики
    P           rulemap      множество правил грамматики
    S             char       начальный символ грамматики
                             Класс FAutomat
                             связанная с данным автоматом граммати-
    *G         Grammar
                             ка
   Q             charset     множество состояний автомата
   T             charset     множество входных символов автомата
   F              ftable     таблица правил автомата
   H               char      начальное состояние автомата
   Z             charset     множество конечных состояний автомата
MustPaint           int      флаг отрисовки графа

        Для хранения таблицы правил конечного автомата использу-
ется структура:
         struct posit{
            long x, y;
            long double a;
         };

         Для создания отображения используется класс компаратора:
         struct rulecmp{
              bool operator()(const char c1, const char c2){
                    return (c1 < c2);
              }
         };                                                           Лист
                                                                      7


                                                                          49