問題
BNF記法の用途として正しいものはどれか。
選択肢
- 1ア データの暗号化
- 2イ プログラミング言語の文法規則を定義する
- 3ウ ネットワーク設計
- 4エ データベース設計
正解
2. イ プログラミング言語の文法規則を定義する
詳しい解説を見る解説を閉じる
解説
正解はイ。BNF(Backus-Naur Form:バッカス・ナウア記法)は、プログラミング言語やデータ形式の文法(構文規則)を形式的に定義するための記法である。「::=」の左辺に定義したい構文要素を置き、右辺にその構成を終端記号や他の構文要素の並びとして記述する。「|」は選択(または)を表し、構文要素自身を右辺に含める再帰的な定義によって繰返し構造も表現できる。言語仕様書の構文定義やコンパイラの構文解析の基礎として利用される。アのデータの暗号化、ウのネットワーク設計、エのデータベース設計(こちらはE-R図などを用いる)は、いずれもBNFの用途ではない。基本情報では、与えられたBNFの定義を読み取り、ある文字列がその文法に適合するかを判定させる問題が頻出であり、選択と再帰の読み方に慣れておくことがポイントである。
一問一答
科目A 180問+科目B 60問