基礎理論
BNF(バッカス・ナウア記法)で次のように定義された <数> が表すものとして、正しい例はどれか。 <数> ::= <数字> | <数字> <数> <数字> ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
ア.+123
イ.12.5
ウ.2026正解
エ.0x1F
解説
BNF の再帰定義「数 = 数字 または 数字+数」は、要するに「1桁以上の数字の並び」を表す——電卓に表示できる整数列のイメージです。
なぜ ウ が正解か
<数> は「<数字> 1つ」または「<数字> の後ろにさらに <数> が続く」と再帰的に定義されており、結果として「1桁以上の数字の連なり」を生成します。2026 はすべて 0〜9 の数字だけで構成された4桁の整数なので、この文法でちゃんと導出可能。よってウが正解です。
出典: AI生成問題(学習用)