21 根據下列 BNF(Backus-Naur Form)表示法,下列何者合乎此文法?

(A) WWW
(B) XYWW
(C) XWWYW
(D) XXWYYW

答案:登入後查看
統計: A(44), B(104), C(161), D(150), E(0) #3274422

詳解 (共 2 筆)

#6227543

解釋如下:

  1. <sentence> 結尾必須是 W。
  2. <term> 可以是 "W" 或 "X<term>Y"。

選項逐一檢視:

  • (A) WWW:符合,因為 <term> 是 "W",最後有 "W"。
  • (B) XYWW:不符合,沒有遵循正確的嵌套。
  • (C) XWWYW:不符合,因為 "W" 後面沒有正確的結構。
  • (D) XXWYYW:符合,因為 "XWYW" 符合規則。

因此,正確答案是 (D) XXWYYW。

4
0
#6247764
( 用 BNF 考遞迴 ( recursive ) 觀念。)
21 根據下列 BNF(Backus-Naur Form)表示法,下列何者合乎此文法?
 <term> ::= X <term> Y | W     # 50% 的機率,選擇遞迴:X <term> Y 
  <sentence> ::= <term> W  # 句子的結尾+'W'   
(A) WWW   ->應改成是 WW : 深度呼叫0次。
(B) XYWW  -> 應改成是XWYW: 深度呼叫1次。
(C) XWWYW  -> 應改成是  XXWYYW 或 XXXWYYYW : 深度呼叫2、3次。
(D) XXWYYW -> 正確遞迴。深度呼叫2次。
XXWYYW: 
子句建構:
    第一次: 0層
           當 X< term >Y,尚未達到基底條件,繼續呼叫。
    第二次: 1層
           當 X< term >Y,尚未達到基底條件,繼續呼叫。
    第三次: 2層
                <term>=='W'。選擇了W,達到基底條件( base case ),開始回傳。
    回傳: 1層
            第2層的結果被第1層拿來用 -> X W Y -> 第1層的結果,被第0層拿來用。
    回傳: 0層
                X (XWY) Y
                   (第1層)
最後,拼接'W'。
顯示: XXWYYW。
              
ㅤㅤ
1 基底條件是 'W',開始返回。只會插入1次W,XY左右對稱。
2 依照遞迴呼叫層數,顯示會如 XXX...XWY...Y。
3 尾巴插入W。
ㅤㅤ
ㅤㅤ
此文法規則可以生成的句子有:
W W
X W Y W
X X W Y Y W
X X X W Y Y Y W
XXXXWYYYYW   
2
0

私人筆記 (共 2 筆)

私人筆記#6518996
未解鎖
要產生合法的句子,必須以W結尾(根據第...
(共 385 字,隱藏中)
前往觀看
5
0
私人筆記#7824213
未解鎖
答案:(D) 解析:BNF 文法:&l...
(共 442 字,隱藏中)
前往觀看
0
0