Re: [問題] BNF文法問題

看板Programming作者 (殺Mo)時間14年前 (2011/05/09 22:30), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串5/6 (看更多)
※ 引述《yauhh (喲)》之銘言: : ※ 引述《supercygnus (......)》之銘言: : : 考慮以下文法: : : E → E * T | T : : T → T + P | P : : P → i | (E) : : i → 0 | 1 | 2….. : : 則2 * 3 + 4 * 5值為何? : : 答:70(2*7*5) 為什麼呢@@ 我還是推不出來,就是怪@@ : 2*3+4*5 由 E 規則可能有 <E,2>*<T,3+4*5> 或 <E,2*3+4>*<T,5> 而前者一下子 : 就會推到盡頭得不到解答. 然後可以看後者: : <E,2*3+4*5> : = <E,2*3+4>*<T,5> { 由 E.1 } : = <E,2>*<T,3+4>*<T,5> { 由 E.1 } : = <T,2>*<T,3+4>*<T,5> { 由 E.2 } : = <P,2>*<T,3+4>*<T,5> { 由 T.2 } : = <i,2>*<T,3+4>*<T,5> { 由 P.1 } : = 2*<T+P,3+4>*<T,5> { 由 i 和 T.1 } : = 2*<<T,3>+<P,4>>*<T,5> { 由 T.1 } : ... : = 2*<<i,3>+<i,4>>*<i,5> : = 2*7*5 : = 70 延續y大的答案而產生的問題... 該如何判斷一個文法如何拆解呢? 不太懂這句 而前者一下子就會推到盡頭得不到解答 因為我推導出來E * T之後 T再推導下去,感覺就推不出來了... 是因為這樣才不考慮這個解答嗎? 另外一問... E→E + T | T T→T * F | F F→(E) | id (E)可視為E嗎?如不行,這題則不為模糊?對嗎? 這個文法是模糊文法嗎? 我的判斷為是模糊文法?對嗎? ※ 編輯: killermomo 來自: 112.105.171.107 (05/10 00:38)
文章代碼(AID): #1Dn_gN-z (Programming)
討論串 (同標題文章)
本文引述了以下文章的的內容:
以下文章回應了本文
完整討論串 (本文為第 5 之 6 篇):
文章代碼(AID): #1Dn_gN-z (Programming)