有没有解析表达式值的函数?

binbin 2005-09-27 10:06:41
一般的数学表达式和逻辑表达式要在运行时求值,有没有现成的函数?
...全文
145 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
lgxysl 2005-09-28
  • 打赏
  • 举报
回复
楼主是要这样:
输入:(a^2b/c^2)*(c^2/a^2b^2)
输出:1/b

呀!!!
lookfeng 2005-09-28
  • 打赏
  • 举报
回复
这是程序输出:

input expression to evaluate(q - quit): 1>2
False(System.Boolean)
input expression to evaluate(q - quit): 1=1
True(System.Boolean)
input expression to evaluate(q - quit): 1=3
False(System.Boolean)
input expression to evaluate(q - quit): 1+2
3(System.Double)
input expression to evaluate(q - quit):
lookfeng 2005-09-28
  • 打赏
  • 举报
回复
using System;
using System.Xml;
using System.Xml.XPath;

namespace XPathNavigator_Evaluate
{
/// <summary>
/// Class1 的摘要说明。
/// </summary>
class Class1
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main(string[] args)
{
//
// TODO: 在此处添加代码以启动应用程序
//
XmlDocument doc = new XmlDocument();
XPathNavigator navigator = doc.CreateNavigator();
string s = "";
while (s != "q")
{
Console.Write("input expression to evaluate(q - quit): ");
s = Console.ReadLine();
if (s != "q")
{
object res = navigator.Evaluate(s);
Console.WriteLine("{0}({1})", res, res.GetType());
}
}
}
}
}
tiaoci 2005-09-27
  • 打赏
  • 举报
回复
我就不懂了,为什么要看《java编程艺术》?

正规的编译原理书里讲得比这要好吧?
tiaoci 2005-09-27
  • 打赏
  • 举报
回复
没有现成的,需要自己做
c9714052 2005-09-27
  • 打赏
  • 举报
回复
数学表达式倒是有,《java编程艺术》有例子,逻辑的怎么个逻辑法? 建设看看lisp语言.

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧