<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          ToolGood.Algorithm計算引擎

          聯(lián)合創(chuàng)作 · 2023-09-30 16:15

          ToolGood.Algorithm 是一款計算引擎,目前支持四則運算、Excel 絕大多數(shù)函數(shù),并支持自定義參數(shù)。

          快速上手

             AlgorithmEngine engine = new AlgorithmEngine();
              double a=0.0;
              if (engine.Parse("1+2")) {
                  a = (double)engine.Evaluate();
              }
              var c = engine.TryEvaluate("2+3", 0);
              var d = engine.TryEvaluate("count({1,2,3,4})", 0);//{}代表數(shù)組,返回:4
              var s = engine.TryEvaluate("'aa'&'bb'", ""); //字符串連接,返回:aabb
              var r = engine.TryEvaluate("(1=1)*9+2", 0); //返回:11
              var d = engine.TryEvaluate("'2016-1-1'+1", DateTime.MinValue); //返回日期:2016-1-2
              var t = engine.TryEvaluate("'2016-1-1'+9*'1:0'", DateTime.MinValue);//返回日期:2016-1-1 9:0

          自定義參數(shù)

          //定義圓柱信息
              public class Cylinder : AlgorithmEngine
              {
                  private int _radius;
                  private int _height;
                  public Cylinder(int radius, int height)
                  {
                      _radius = radius;
                      _height = height;
                  }
          
                  protected override Operand GetParameter(Operand curOpd)
                  {
                      if (curOpd.Parameter == "[半徑]") {
                          return new Operand(OperandType.NUMBER, _radius);
                      }
                      if (curOpd.Parameter == "[直徑]") {
                          return new Operand(OperandType.NUMBER, _radius * 2);
                      }
                      if (curOpd.Parameter == "[高]") {
                          return new Operand(OperandType.NUMBER, _height);
                      }
                      return base.GetParameter(curOpd);
                  }
              }
              //調(diào)用方法
              Cylinder c = new Cylinder(3, 10);
              c.TryEvaluate("[半徑]*[半徑]*pi()", 0.0);      //圓底面積
              c.TryEvaluate("[直徑]*pi()", 0.0);            //圓的長
              c.TryEvaluate("[半徑]*[半徑]*pi()*[高]", 0.0); //圓的體積

          Excel 函數(shù)

          函數(shù):邏輯函數(shù)、數(shù)學與三角函數(shù)、文本函數(shù)、統(tǒng)計函數(shù)、日期與時間函數(shù)

          注:函數(shù)名不分大小寫,帶方括號的參數(shù)可省略,示例的返回值,可能為近似值。

          瀏覽 33
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          編輯 分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          編輯 分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  中文字幕无码精品三级在线欧美 | а 中文在线天堂精品 | 麻豆国产免费 | 黄色网页在线视频 | 色天堂在线观看 |