Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
初级会员
注册日期: 2010-07-11
年龄: 38
帖子: 1
声望力: 0 ![]() |
![]()
[问题描述]
有一个魔王总是使用自己的一种非常精练而抽象的语言讲话,没有人能听得懂,但他的语言是可以逐步解释成人能听懂的语言的,因为他的语言是由以下两种形式的规则由人的语言逐步抽象上去的: (1)α→β1β2...βm (2)(θδ1δ2...δn)→θδnδn-1...θδ1θ 在这两种形式中,从左到右均表示解释。试写一个魔王语言的解释系统,把他的话解释成人能听得懂的话。 [基本要求] 用下述两条具体规则和上述规则形式(2)实现。设大写字母表示魔王语言的词汇;小写字母表示人的语言词汇;希腊字母表示可以用大写字母或小写字母代换的变量。魔王语言可含人的词汇。 (1)B→tAdA (2)A→sae [测试数据] B(ehnxgz)B解释成tsaedsaeezegexenehetsaedsae,若将小写字母与汉字建立下表所示的对应关系测魔王说的话是:“天上一只鹅地上一只鹅鹅追鹅赶鹅下鹅蛋鹅恨鹅天上一只鹅地上一只鹅”。 T d s a e z g x n h 天 地 上 一只 鹅 追 赶 下 蛋 恨 表达式计算是实现程序设计语言的基本问题之一,也是栈的应用的一个典型例子。设计一个程序,演示用算符优先法对算术表达式求值的过程。 [实现提示] 将魔王的语言自右至左进栈,总是处理栈顶字符。若是开括号,则逐一出栈,将字母顺序入队列,直至闭括号出栈,并按规则要求逐一出队列再处理后入栈。其他情形较简单,请读者思考应如何处理。应首先实现栈和队列的基本操作 这就是课设的具体内容 希望大家多多提宝贵建议和提示 谢谢 哪位大侠帮写出程序来就更感谢了! 马上就交了 急啊! |
![]() |
![]() |