2016-01-19 49 views
1

我正在爲使用DDMathParser的iOS構建某種計算器。我想知道如何將像3+3*4 (After parsing add(3,multiply(3,4)))這樣的表達式(NSString)分解爲其各個步驟:multiply(3,4) add(3,12)。我寧願我在NSArray或其他相對有用的列表對象中獲得這些。iOS DDMathParser獲取數學表達式的求解步驟

  • Example: add(3,multiply(3,4))
  • [1] multiply(3,4)
  • [2] add(3,12)
  • [3] 15
+0

到目前爲止你有什麼?您想讓我們爲您編寫應用程序嗎? –

+0

我只是需要一個想法或方向去哪裏 – Fidel

回答

0

DDMathParser筆者在這裏。

這應該是非常簡單的。解析器可以讓您回到格式正確的表達式樹,而不僅僅是數值計算。使用表達式樹,你可以這樣做:

  1. 找到樹中最深的表達式。這是將要評估的第一件事。
  2. 評估該表達式手動
  3. 替代評估早在樹代替原來的表達
  4. 的創建整個樹指什麼搜索這點的副本。
  5. 重複,直到沒有什麼更多的評估。
+0

謝謝,我正在考慮這個決定。我只是不知道如何在樹上找到最深的表情,但現在我明白了該怎麼做。 – Fidel