平成29年度 秋期 応用情報技術者試験 午前 問2
テクノロジ/基礎理論次のBNFにおいて非終端記号<A>から生成される文字列はどれか。 <R0> ::= 0|3|6|9 <R1> ::= 1|4|7 <R2> ::= 2|5|8 <A> ::= <R0>|<A><R0>|<B><R2>|<C><R1> <B> ::= <R1>|<A><R1>|<B><R0>|<C><R2> <C> ::= <R2>|<A><R2>|<B><R1>|<C><R0>
出典:平成29年度 秋期 応用情報技術者試験 午前 問2
- ア123
- イ124
- ウ127
- エ128
正解:ア
解説
R0,R1,R2はそれぞれ3の倍数(余り0),3で割って1余る数,3で割って2余る数の集合です。生成規則をたどると,<A>は各桁の数字の和を3で割った余りが0になる文字列,<B>は余りが1,<C>は余りが2になる文字列を生成する構造になっています。
選択肢ごとの解説
- ア正しい。123の各桁の和は1+2+3=6で3の倍数(余り0)なので,<A>から生成されます。
- イ誤り。124の各桁の和は1+2+4=7で3で割ると1余るため,<A>ではなく<B>から生成される文字列です。
- ウ誤り。127の各桁の和は1+2+7=10で3で割ると1余るため,<A>ではなく<B>から生成される文字列です。
- エ誤り。128の各桁の和は1+2+8=11で3で割ると2余るため,<A>ではなく<C>から生成される文字列です。