#27206: 遞迴解括號


cges30901 (cges30901)

學校 : 不指定學校
編號 : 30877
來源 : [39.12.66.21]
最後登入時間 :
2025-04-20 17:19:22

這題最複雜的地方應該是括號,所以我的想法是用遞迴的方式,算出括號內的值。

1. 首先把輸入轉為陣列,然後呼叫遞迴函式。

2. 因為括號是最優先的,所以遞迴函式內首先處理括號。先找出最左邊的括號,然後找對應的右括號,再用兩邊括號內的部份呼叫遞迴函式,並把左右括號間的部份刪掉,用遞迴函式回傳的值取代,重複這個步驟直到沒有括號

3. 括號處理完之後就可以簡單的從左到右進行乘除運算,然後加減運算