将24点游戏移植到ERM中理论探讨
我打算将24点游戏移植到ERM中。所谓24点游戏,就是从 52张扑克牌中抽取4张。使用这4张扑克牌的点数,加上数学上的加减乘除,使得最后计算结果是24。比如牌面点数是 4-2-8-4
则可以这样组合得到结果:(4÷4+2)×8=24 或 (8+4)×4÷2=24 或(8×4)-(4×2)=24 或 (4+2)×(8-4)=24
移植到ERM中时,比如访问某物体触发事件。
给出4张扑克,玩家们就要思考组合计算方式。然后通过交互式,使电脑能接收到你的算法和结果。
当结果正确时,给予一定英雄祝福。当结果错误(或者本身抽取的牌面根本无法算出24时)给予一定诅咒。
我想过,由于ERM计算程式的限制(没有括号先运算的概念),可以先简单分成2种计算形式。
第一种:顺序式计算,跟ERM本身运算的方式一样,从左到右。
第二种:分二组式计算,就像上面显示的后2种结果,如(8×4)-(4×2)=24,就是前后2部分,中间添加数学符号。
这样的话,就增加了能算出答案的几率。不过仍然有一种特殊情况未考虑,比如 (9-6÷6)×3=24
这里按ERM的顺序计算是错误的,而又分组又不合适,于是可以再放宽限制,结果是 -24也可以。比如:(6÷6-9)×3=-24
这样的话,也就变成了顺序式计算了。
当然,为了增加取胜的几率,也可以设定,接近24的小数也当正确。如:(3×8)+(9÷11)=24.818
只要计算结果的整数部分是24,也勉强成立。
好了,理论完毕。移植后应该就比较好玩了。
各位有什么好提议呢?
[ 本帖最后由 hanter007 于 2012-6-20 14:28 编辑 ] 活动脑筋,不易中风偏瘫和老年痴呆,所以很支持。 刚写了个抽扑克牌面的试了下。呵呵。大家多给些建议。
回复 3# 的帖子
:buxie: 不错,小时候经常玩这个 这个好玩,绝对支持! 嗯,这个比较好,动动脑筋,又不是很困难这个还是比较容易的,很难的出道无解的牌 不过我觉得还是原汁原味的好
个人不赞成-24,以及近似,这样感觉怪怪的说 好玩是挺好玩的,就是觉得有点复杂,ERM实现加括号的四则运算不知难度如何。 ERM计算规则对这个游戏影响比较大啊。
昨天回帖的时候没有想到这个。
回复 8# 的帖子
ERM的计算方式都是从左到右一直算的比如:(4÷4+2)×8=24 换成ERM语言就是4÷4+2×8=24 。
回复 7# 的帖子
可能你没看懂 -24的意义.对比下面2个数学式.(9-6÷6)×3=24
(6÷6-9)×3=-24
对于第一个数学式,用 ERM来实现的话, 首先是计算 6÷6,再×-1,再+9,再×3.
第二个的话,直接 ERM 左右运算就得出了。
出现-24是为了省 ERM语句。不然,你要模拟 第一个,又要用多很多语句来实现这一类型的算法。
也就是说,你既然懂得运算出-24,就证明你也懂变通成24。所以就默认 -24也是正确答案。
不然,你要模拟所有括号类型的运算,真的很繁琐哦。;oweojs;
一句到底,为了省点不必要的语句。
页:
[1]