看板 C_Sharp 關於我們 聯絡資訊
※ 引述《hatasum (我很可愛)》之銘言: : 假設題目是這樣 : 12+3*5-(25-6*( 12-5)+5-(7-2*3))-11 : 我的想法是 : 一個矩陣存數字 : [12, 3, 5, 25, 6, 12, 5, 5, 7, 2, 3, 11] : 一個矩陣存+-*/ 其中 +:1 -:2 *:3 /:4 : [1 3 2 2 3 2 1 2 2 3 2]===>if 值>2 ,先算; : 一個矩陣存() : [3 5 -7 8 -11 -11] : 正數代表"(" 負數代表")" : 其中3代表第4個數字前面有( : 所以-7代表第8個數字前面有")" : ps:其實應該再把[3 5 -7 8 -11 -11]轉成[8 -11][5 -7][3 -11] : 然後按下"等於" : 就把答案依照這三個矩陣算出來 : 目前我正在研究這個的邏輯...XD我感覺有點複雜 : 但是覺得這題目還滿有趣的 所以提供出來 大家空閒時可以想想 : ps:這不是我的作業...只是突然想到這有趣的題目...XD 這個問題簡單講就是要實作具有operator precedence特徵的計算機 實作:用lex + yacc 研究:請參閱compiler課本 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.160.182.60