工大后院

 找回密码
 加入后院

扫一扫,访问微社区

QQ登录

只需一步,快速开始

搜索
查看: 1982|回复: 8

[10W饭票] 四则运算求值

[复制链接]
发表于 2006-11-16 21:14 | 显示全部楼层 |阅读模式
[内容]
  
对输入的四则运算式子字符串求值, 如:2+3*(44.3+235)


[要求]
  不能用 JAVASCRIPT 中的 eval 或其它语言中类似的功能,要自己写一个算法来求值


如果无法完全完成,只能处理没有括号的也可有:3W

解答开新帖,并把阅读权限设为111(没权限就不要设了...:time: 不要高于150,那样我就看不到了。。。)
新开的帖会在解答结束后合并到此帖


此题目完全完成饭票的下限为10W,视情况可加倍

[提示]
波兰式(还是叫逆波兰?忘了...可以参考下数据结构方面的书,关于树的遍历:后序遍历)
如: 12+34 表示为: 12  34  +  
         12+45*4   表示为: 12 45  4 * +
         12+23*(34+334) 表示为:12 23 34 334 + * +
        
        这样的式子没有括号,只须从后到前读....
       接下来就是这整个算法了。。。

[ 本帖最后由 iptton 于 2006-12-24 15:20 编辑 ]
发表于 2006-11-21 10:11 | 显示全部楼层
哈哈.IP这么一提示其实就很明显了.这10w不难赚哦.

还有,如果用汇编的话你就大亏了.本来汇编(特别是单片机系统的汇编语言)大多没有乘除的,都要自己写指令.做嵌入式或硬件的水友一来随便就能拿走你的10w...哈哈.
回复

使用道具 举报

 楼主| 发表于 2006-11-21 18:12 | 显示全部楼层
但还是无人问津。。。
回复

使用道具 举报

发表于 2006-12-1 22:40 | 显示全部楼层
由于不能设置阅读权限,因此没有开新贴解答。

[ 本帖最后由 greenteanet 于 2006-12-1 22:49 编辑 ]
回复

使用道具 举报

发表于 2006-12-3 22:34 | 显示全部楼层
题我就不做了,但是呢,我可以告诉你,如果我做我会选择lex和yacc配合,因为你输入的是字符串,必须将各种单词拿出来,然后再处理,目前做计数器的lex,yacc代码网上大把,可以随便搜一下即可
回复

使用道具 举报

 楼主| 发表于 2006-12-4 16:41 | 显示全部楼层
题目的目的不在于答案...
回复

使用道具 举报

 楼主| 发表于 2006-12-5 19:39 | 显示全部楼层
发现这道题目是大三的VC课程设计.....
回复

使用道具 举报

发表于 2006-12-7 01:14 | 显示全部楼层
这不是编译原理吗?
便宜了大三的同学了
回复

使用道具 举报

发表于 2006-12-11 03:11 | 显示全部楼层
貌似大二的时候的数据结构都有这样的东东...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入后院

本版积分规则

QQ|Archiver|手机版|小黑屋|广告业务Q|工大后院 ( 粤ICP备10013660号 )

GMT+8, 2025-5-11 10:19

Powered by Discuz! X3.5

Copyright © 2001-2024 Tencent Cloud.

快速回复 返回顶部 返回列表