平成18年度 技術士第一次試験問題【専門科目】
【16】情報工学部門
W−10
3個以上の正の整数を “,”で区切った文字列 <INTLIST> を表す、次の
ような BN記法 (BNF) の文法規則がある。[ア]と[イ]の組合せとして
最も適切なものを@〜Dの中から選べ。
 <INTLIST> ::= <INTEGER> [ア]
 <INTEGERS> ::= “,”<INTEGER> | “,” <INTEGER> <INTEGERS>
 <INTEGER> ::= <NONZERO> | [イ]
 <DIGIT> ::= “0” | <NONZERO>
 <NONZERO> ::= “1”|“2”|“3”|“4”|“5”|“6”|“7”
       |“8”|“9”|

@ [ア] “,”<INTEGER>“,”<INTEGERS> [イ] <NONZERO> <DIGIT>
A [ア] “,”<INTEGER>“,”<INTEGERS> [イ] <INTEGER> <DIGIT>
B [ア] “,”<INTEGER> <INTEGERS>  [イ] <DIGIT> <INTEGER>
C [ア] “,”<INTEGER> <INTEGERS>  [イ] <INTEGER> <DIGIT>
D [ア] <INTEGERS>           [イ] <DIGIT> <INTEGER>




【正解】 C

BNF (Backus Naur Form) は、プログラム言語などの構文を記述する
ためのメタ言語のことである。

[ア]が “,”<INTEGER>“
,<INTEGERS>だと、
 ,1
,,1 のように , が2つ並ぶことになり、適切でない。
 従って、@Aは誤り。

[イ] が <DIGIT> <INTEGER> だと
 012 が表現できるものの、 10 や 210 が表現できなくなる。
 従ってBDは誤り。
 
EXCELのマクロのご相談なら ファーストマクロ 



W−9 目次 W−11
ファーストマクロ TOPページ