• 全部
  • C#综合技术
  • C#互联网桌面应用
  • AppLauncher
  • WinForm&WPF
  • C#开发新技术
  • 问答

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

binbin 2005-09-27 10:06:41
一般的数学表达式和逻辑表达式要在运行时求值,有没有现成的函数?
...全文
112 点赞 收藏 6
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
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语言.
回复
发帖
C#
创建于2007-09-28

10.5w+

社区成员

.NET技术 C#
申请成为版主
帖子事件
创建了帖子
2005-09-27 10:06
社区公告

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