1. Главная
  2. Библиотека
  3. Информатика
  4. Заданную КС-грамматику приведите к грамматике Вирта (простого предшествования). Для этого устраните факультативные [ ] и и...

Заданную КС-грамматику приведите к грамматике Вирта (простого предшествования). Для этого устраните факультативные [ ] и итеративные { } скобки путем добавления новых альтернатив и праворекурсивных правил

«Заданную КС-грамматику приведите к грамматике Вирта (простого предшествования). Для этого устраните факультативные [ ] и итеративные { } скобки путем добавления новых альтернатив и праворекурсивных правил»
  • Информатика

Условие:

Заданную КС-грамматику приведите к грамматике Вирта (простого предшествования). Для этого устраните факультативные [ ] и итеративные { } скобки путем добавления новых альтернатив и праворекурсивных правил. Постройте матрицу простого предшествования. Проведите свертку указанной правильной цепочки с использованием построенных Вами отношений предшествования.

S :: = CALL <идентификатор>(<список фактических параметров>)

<список фактических параметров> :: = <параметр>{,< параметр >}

<параметр> :: = < идентификатор>   | <константа >                                                 

<идентификатор> - обозначаем @; <константа> - обозначаем k;

Цепочка для свертки:  CALL  PRIMER1 ( ABC, 27, 15 )

Решение:

Переобозначим нетерминалы для сокращения записи и избавимся от факультативных и итеративных скобок:

S- CALL @ ( L )

L- P | P, L

P- @ | k

Новая грамматика не является грамматикой простого предшествования, т.к. между символами L и ) двойственные отношения:

L = ) и L ) так как R(L) DO , a L является R(L) из-за наличия в грамматике правила L- P, L

Введя новый нетерминал L1 и правило для него L1-...

Не нашел нужную задачу?

Воспользуйся поиском

Выбери предмет