Рубрики

ВОРОТА | GATE-CS-2000 | Вопрос 49

Дано следующее выражение грамматики:

E -> E * F | F + E | F
F -> F - F | id 

что из перечисленного правда?
(A) * имеет более высокий приоритет, чем +
(B) — имеет более высокий приоритет, чем *
(C) + и — имеют одинаковый приоритет
(D) + имеет более высокий приоритет, чем *

Ответ: (Б)
Пояснение: допустим, что i / p равно 3 * 4-5, когда мы рисуем дерево разбора в соответствии с грамматикой

      E
   /  |  \
  E   *   F
  |     / | \
  F    F  -  F
  |    |     |
id(3) id(4) id(5)

Как мы видим, сначала «-» будет оцениваться, затем «*» оценивается, поэтому «-» имеет более высокий приоритет, чем *.

Рекомендуемые посты:

ВОРОТА | GATE-CS-2000 | Вопрос 49

0.00 (0%) 0 votes