Class CaltechEval

java.lang.Object
tools.CaltechEval

public class CaltechEval extends Object
以 Shunting-yard 演算法實作的純 Java 數學算式求值器。

改編自 Julian Bunn(Caltech,2008)的公開程式碼,支援完整的中序算式字串, 包含加減乘除、括號、科學記號、以及下列函式:

  • 三角函式:sincostanasinacosatanatan2
  • 數學函式:expsqrtmaxmin
  • 單元運算符:u(ceiling)、d(floor)、n(負值)

使用方式:以目標算式字串建構 CaltechEval 實例,再呼叫 evaluate() 取得 double 結果。 亦可作為獨立命令列工具直接執行,傳入算式字串輸出計算結果。

  • Constructor Details

    • CaltechEval

      public CaltechEval(String s)
  • Method Details

    • main

      public static void main(String[] args)
    • evaluate

      public double evaluate()
    • reduceTokens

      public Vector reduceTokens(Vector tokens)