問題プレビューID: e729e0d5

問 4

次の規則から生成することができる式はどれか。

〔規則〕 <式> ::= <変数> | (<式> + <式>) | <式> * <式> <変数> ::= A | B | C | D

解説

与えられた規則では,加算の式は必ず括弧で囲んだ「(<式> + <式>)」の形でしか生成できず,乗算は「<式> * <式>」の形で生成できる。

  • ア: A + (B + C) の部分が括弧で囲まれていない加算式であり,生成できない。
  • イ: (A + B) + (C + D) は全体が括弧で囲まれていない加算式であり,生成できない。
  • ウ: (A + B) * (C + D) は,左辺 (A + B) と右辺 (C + D) がともに括弧付きの加算式で,これを乗算規則「<式> * <式>」で結合した形であり,生成できる。
  • エ: (A * B) + (C * D) は全体が括弧で囲まれていない加算式であり,生成できない。

よって正解は「ウ」である。