1. Главная
  2. Библиотека
  3. Программирование
  4. Задача 22. Для проектирования программного обеспечения...
Решение задачи на тему

Задача 22. Для проектирования программного обеспечения обработки специальной информации в бортовой вычислительной системе космического аппарата разработана КС-грамматика: T=≤ft{k,+,-,{ },() ight}, N= {S, A, B}, P:{S → S+A, S → A, A → A ~B, ~B → ~A, ~B →

  • Программирование
  • #Основы алгоритмизации и программирования
  • #Структуры и алгоритмы обработки данных
Задача 22. Для проектирования программного обеспечения обработки специальной информации в бортовой вычислительной системе космического аппарата разработана КС-грамматика: T=≤ft{k,+,-,{ },() ight}, N= {S, A, B}, P:{S → S+A, S → A, A → A ~B, ~B → ~A, ~B →

Условие:

Задача 22. Для проектирования программного обеспечения обработки специальной информации в бортовой вычислительной системе космического аппарата разработана КС-грамматика: T=≤ft\{k,+,-,{ },()\right\}, N= \{S, A, B\}, P:\{S → S+A, S → A, A → A ~B, ~B → ~A, ~B → ~B-A, B →(S), A →(S), A → k, A → B\}. Построить правосторонний вывод для заданной терминальной цепочки k k+k≤ft(k-k* k\right), а также дерево синтаксического разбора.

Решение:

Ниже привожу пошаговый правосторонний вывод и пояснение построения дерева синтаксического разбора для терминальной цепочки   k k + k ( k – k * k )

Обозначим нетерминальные символы S, A, B согласно грамматике с правилами:

  1. S → S + A
  2. S → A
  3. A → A * B
  4. A → (S)
  5. A → k
  6. A → B
  7. B → B – A
  8. B → (S)
  9. B → A

Заметим, что правила A → B и B → A позволяют переходить между уровнями (операции + и – задаются в S и B соответственно, а умножение – в A). Мы выберем те выводы, которые дают выражения: – Левая часть от «+»: k * k – Правая часть...

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