如何使用C#中的System.Data.Compute()计算sin

时间:2017-03-12 17:12:45

标签: c#

我是新来的!我是C#的新手。我的一个朋友挑战我创建科学计算器。我搜索并找到了一种简单的方法来使用System.Data库。举个例子,我们有:

string math = "5 + 3 * 3";
string answer = new DataTable().Compute(math, null).ToString();

这对于基本表达式来说非常简单,但我似乎无法找到一种方法来使计算器能够计算sin,cos e.t.c.有人有想法吗?

PS:我的英语不好,所以请原谅我

3 个答案:

答案 0 :(得分:3)

感谢Mat J告诉我关于mXparser的事!我找到了一种通过它计算而不需要改变很多代码的方法!

这是mXparser:http://mathparser.org/

这是代码的变化方式: 那是:

string math = "5 + 3 * 3";
string answer = new DataTable().Compute(math, null).ToString();

现在是:

string math = "5 + 3 * 3";
Expression e = new Expression(math);
math = e.calculate();

唯一的问题是它适用于Expressions而不是字符串,但它仍然非常简单易用!

我要感谢大家的快速回答!你真的帮帮我了!

答案 1 :(得分:1)

看看数学课,但这样的事情对你有用

    string math = "5 + 3 * 3";
    string answer = new DataTable().Compute(math, null).ToString();
    answer = Math.Sin(Convert.ToDouble(answer)).ToString();

答案 2 :(得分:1)

    You can use the System.Math library. But System.Data library is related to ado.net operation. 
Example:
    string input=90
    var output =System.Math.Sin(Convert.ToDouble(input))); 
    output =System.Math.Cos(Convert.ToDouble(input)));