- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
巧算24点计算机程序设计思路.doc
“巧算24点”计算机程序设计思路
潜龙学校八年(3)班 薛临风
“巧算24点”是我们喜爱的扑克益智游戏,课余时间,只要一副扑克牌,或自制的一副卡片,就能与同学来一个“智力大比拼”,但这快乐之中,总有一个烦恼深深困扰着我,有时出了4张牌后,我们虽然绞尽脑汁,也没能算出,但又感觉这不是“无解”。所以我常常想,能否编写一个“巧算24点”的计算机程序,及时告诉我们答案呢?下面结合学到的数学知识及自学的Visual Basic语言,探索“巧算24点”的计算机程序设计思路问题。
一、基本思路
“巧算24点”的游戏规则如下:一副牌中抽去大小王及J、Q、K,剩下40张,任意抽取4张牌,用加、减、乘、除(可加括号)把牌面上的数算成24。也就是说利用4张牌,运用各种运算方式,最终得出24这个答案。现在不妨设任意抽出的4张牌的数分别为a、b、c、d。再用各个运算符号去套他们,如(a+b)×c-d,就可以得出一组计算公式,然后把所有的计算公式首先储存在计算机程序中,让计算机程序逐个套用这些计算公式,当计算结果等于24时,则显示结果,否则继续套用下一个公式。如此看来,要想让电脑的“人工智能”帮我们解24点,计算公式是最关键的一步了!
二、计算公式探索
要列出“巧算24点”的计算公式,显然不能瞎碰乱凑,只能采取分类讨论的方法。在探索计算公式过程中,发现有三种情况:(1)一些公式并没有实用价值,如a-b-c-d,因为a的最大值为10,即使b,c,d都取最小的1,则10-1-1-1=7,答案的最大值为7,所以类似这些公式都要舍去;(2)由于a、b、c、d与抽出的4张牌可以进行轮换,故如a+b+c-d与a+b-c+d本质上是一个公式,这些重复的公式也均要舍去;(3)一些公式之间可以互相转换,如a-(b-c-d))a+(b+c)÷d
(13)a+b+c÷d
6、公式中只有“-”号和“×”号
(14)a×b×c-d
(15)a×b-c-d
(16)(a-b)×(c-d)
(17)(a×b-c)×d
(18)(a-b-c)×d
(19)(a-b)×c×d
(20)a×b-c×d
(21)a×(b-c)-d
7、公式中只有“+”号和“-”号
(22)a+b+c-d
8、公式中只有“×”号和“÷”号
(23)a×b×c÷d
(24)a×b÷c÷d
9、公式中只有“-”号和“÷”号
无实用公式
10、公式中只有“-”号、“+” 号和“×”号
(25)a×(b+c)-d
(26)(a+b-c)×d
(27)a×b+c–d
(28)a×(b-c)+d
(29)(a+b)×(c-d)
11、公式中只有“-”号、“+”号和“÷”号
无实用公式,a+b的最大值为20,而无论是减还是除,都会让20变小,所以没有公式。
12、公式中只有“×”号、“÷”号和“+”号
(30)(a+b)×c÷d
(31) a×b÷c+d
(32)(a÷b+c)×d
(33)(a×b+c)÷d
(34)a÷b+c×d
13、公式中只有“×”号、“÷”号和 “-”号
(35)(a-b)×c÷d
(36)(a×b-c)÷d
(37)(a-b÷c)….等不同形式的组合,根据计算公式,共有4×3×2×1=24种组合方式。
三、计算机程序设计
有了以上的数学分析,现在就可以进行计算机程序设计了,在程序界面上放4个能输入扑克牌点数的文本框,分别代表“1号牌”、“2号牌”、“3号牌”和“4号牌”,再放一个计算按钮,如下图:
点击“计算”按钮,计算机程序计算的执行过程是:
首先是第一种组合:
a=“1号牌”
b=“2号牌”
c=“3号牌”
d=“4号牌”
然后调用计算公式,即首先套用第一个公式,如果结果等于24,则显示结果,否则,继续套用第二个公式……,直至第40个公式,如计算结果仍不等于24,则考虑第二种组合:
a=“1号牌”
b=“2号牌”
c=“4号牌”
d=“3号牌”
再次调用计算公式,这样反复循环,直至第24种组合,如结果仍不等于24,则判断为不能算出。把以上过程总结成程序流程图:
把以上的程序流程编译成计算机语言,一个能“巧算24点”计算机程序就诞生了,经过实践中测试,只要抽出的4张牌“有解”,它均能算出(程序下载:/xuelinfeng.htm)。
附录:程序代码
首先在窗体上放置4个文本框,分别命名为“牌号1”、“牌号1”、
“牌号2”、“牌号3”和“牌号4”,放置1个标签,命名为“显示
结果”,再放置一个按钮,命名为“计算”,声明全局变量:a、b
c、d。绿色文字为注释部分,本代码在VB6.0中编译通过。
Dim a, b, c, d
Sub 调用计算公式()储存40个计算公式
公式1
If a + b + c + d = 2
您可能关注的文档
- 浅析幼儿剪纸活动之设计.doc
- 塔吊安装施工技术方案.doc
- 民间音乐游戏是幼儿的快乐童年.doc
- 发酵工程(李艳)汇编.docx
- 2010年数学模拟试卷(十).doc
- 脚踏实地精心谋划解读.doc
- 乐东万冲光伏电站新建1回35kV线路接至35kV万冲站线路新建工程施工设计说明书.doc
- 交通安全与智能控制专业建设方案(河南交通职业技术学院).doc
- 君安大酒店安防监控方案设计系统doc - 根据设计原则、设计规范和依据.doc
- 2008高考物理实验方案设计.doc
- 2025年九年级历史上册重难点汇总(统编版)拜占庭帝国和《查士丁尼法典》(课件).pdf
- 2025年浙江省金华市六校联考中考数学模拟试卷+答案解析.pdf
- 2025-2026学年九年级道德与法治上册同步系列(统编版)夯实法治基础(课件).pdf
- 工业机器人应用编程· 中级(汇博)王志强,禹鑫燚,蒋庆斌 著课后习题答案.pdf
- Kubernetes容器部署与应用实战(项目式微课版)杨运强, 吴进, 黄鑫, 主编课后习题答案.pdf
- 国际贸易基础张宗英, 张华, 主编课后习题答案.pdf
- 大数据技术与应用孔华锋课后习题答案.pdf
- 数值分析(基于MATLAB) 周金明、吴小太课后习题答案.pdf
- Visual Basic程序设计基础(双色)陆立波课后习题答案.pdf
- 单片机应用技术(第2版)[C语言版](双色)(含微课)周君芝课后习题答案.pdf
文档评论(0)