応用情報トップに戻る
練習問題難易度: 2026年度

応用情報技術者 予想問題練習問題 第7問

問題

BNF(バッカス・ナウア記法)で <S> ::= a | b<S>c と定義されたとき、生成される文字列の形として正しいものはどれか。

選択肢

  1. 1a または bac または bbacc など(左に b、右に c が同数並び中心が a)
  2. 2a が任意個並んだもの
  3. 3b と c が交互に並んだもの
  4. 4a と b が交互に並ぶもの

正解

1. a または bac または bbacc など(左に b、右に c が同数並び中心が a)

詳しい解説を見る

解説

再帰的定義 <S>::=a | b<S>c により、<S> は a に「b」を左に「c」を右に同数ずつ付加して得られる。具体的には a, bac, bbacc, bbbaccc, … のように b^n a c^n (n≧0)の形となる。これは文脈自由文法でしか表現できない代表例で、正規表現では b^n a c^n のような左右対応はカウントが必要なため記述できない。コンパイラの構文解析やプログラミング言語設計の基礎として頻出する。

一問一答

全400問を繰り返し学習

練習問題の関連問題

この調子で演習を続けよう

スキマ資格では応用情報の全3360問を分野別・難易度別に体系的に学習できます。応用情報技術者試験(AP)は IPA が実施する情報処理技術者試験のレベル3。午前 4択80問・午後 記述11問中5問選択、各60%以上で合格。テクノロジ・マネジメント・ストラテジの全分野から出題されます。