CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
英特尔®游戏设计大赛100美元现金周周送 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

关于自定义数学公式的求值问题。

楼主oceanming()2003-06-01 00:39:22 在 .NET技术 / ASP.NET 提问

有一个特殊情况,需要用户先定义一个数学公式,变量名定死了(如为X,Y),用户可以任意设置这个公式,如可以设为X*13-44,或X+Y-23等等,我把这个公式以字符串形式保存在数据库中,然后在一个用户输入X,Y的值后可以从数据库中调出这个公式,求出这个公式的结果出来.问题是这个公式是字符串形式的,虽然用string.Replace方法把X,Y用真正的数字代替,但是代替之后还是字符串形式,如何把这个字符串的公式变成真正的公式而可以求出最后的结果出来?? 问题点数:50、回复次数:4Top

1 楼xhan2000(popeye.net)回复于 2003-06-01 01:04:36 得分 5

这个问题有意思  
   
  可以分多个字段存放  
   
  然后判断if(str=="*")A*B。。。Top

2 楼niwalker()回复于 2003-06-01 01:17:58 得分 5

你要编写一个解析器了,哈。去网络上找找,或许有。  
  自己写的话,需要构造一棵运算树(2叉树),然后分离数据和操作符,把分析的结果放入树中的节点,最后对树进行求值。  
  Top

3 楼lostinetdotcom(又一个MVP竞争者)回复于 2003-06-01 10:50:29 得分 30

http://www.lostinet.com/temp/calcparser/Example.aspxTop

4 楼mongtze(江南有情天)回复于 2003-06-01 12:56:53 得分 10

有一个VB函数是将字符串转换为公式的,我在ASP里用过。。。  
  是   Eval   函数  
   
  计算一个表达式的值并返回结果。  
   
    [result   =   ]Eval(expression)  
   
  参数  
  result  
   
  可选项。   是一个变量,用于接受返回的结果。如果未指定结果,应考虑使用   Execute   语句代替。  
   
  expression  
   
  必选项。可以是包含任何有效   VBScript   表达式的字符串。  
   
  说明  
  在   VBScript   中,x   =   y   可以有两种解释。第一种方式是赋值语句,将   y   的值赋予   x。第二种解释是测试   x   和   y   是否相等。如果相等,result   为   True;否则   result   为   False。Eval   方法总是采用第二种解释,而   Execute   语句总是采用第一种。  
   
  注意     在Microsoft(R)   Visual   Basic   Scripting   Edition   中不存在这种比较与赋值的混淆,因为赋值运算符(=)与比较运算符   (==)不同。  
   
  下面的例子说明了   Eval   函数的用法:    
   
  Sub   GuessANumber  
      Dim   Guess,   RndNum  
      RndNum   =   Int((100)   *   Rnd(1)   +   1)  
      Guess   =   CInt(InputBox("Enter   your   guess:",,0))  
      Do  
          If   Eval("Guess   =   RndNum")   Then  
              MsgBox   "祝贺你!猜对了!"  
              Exit   Sub  
          Else  
              Guess   =   CInt(InputBox("对不起,请再试一次",,0))  
          End   If  
      Loop   Until   Guess   =   0  
  End   Sub  
  Top

相关问题

  • EXCE数学公式问题
  • (数学公式)请教一数学公式,顶着有分...
  • 在word97中如何输入数学公式,如(西格码)?
  • 有没有根据数学公式生成图形的软件?
  • 在word2000里怎样输入数学公式啊
  • 怎么将数学公式做入flash?急!急!急!
  • 如何在网页中输入或显示数学公式?
  • 有关数学公式编辑的问题
  • 如何在word里插入 数学公式什么的 ?
  • 问个关于数学公式的问题?

关键词

  • 函数
  • 语句
  • 用户
  • 字符串
  • 公式
  • 赋值
  • guess
  • rndnum
  • 树
  • eval

得分解答快速导航

  • 帖主:oceanming
  • xhan2000
  • niwalker
  • lostinetdotcom
  • mongtze

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo