c语言24点游戏代码回法,C语言解24点游戏程序
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
前几天在微博上看到24点的游戏,6 6 6
10。算了很久是在算不出来,最后我想我何不写一个小程序解决它?说做就做,我刚开始的想法很简单,就是列举4个数的所有可能的表达式组合,然后计算表达
式是否等于24,如果是的话就找到了答案。但我花了一晚的时间都没有写出程序来…第二天我改变了思路,这也是从一些答案里得到的灵感。例如
一个3 8 3 8,它的答案是 3/(3 –
8/3)。要得到24这个答案,大笨兔想如果答案的第一个数是3,那么它要加多少,减多少,乘多少,除多少才是24?这样我们就把就24的问题转换成了规
模更小的问题,我们就这样求下去,直到最后一个数字,然后判定是否是正确答案。我使用[code lang="js"]
typedef struct EXPREESSIONG{
float numbers[4];
char operation[4];
}exp;
[/code]来
保存一个表达式,numbers数组保存4个操作数,operation保存3个操作符。这里数字我使用float保存,以前使用的是int,但我发现
3/5的值是0。于是就改成了float,不过这里也会有一个问题,比如程序读入 5 5 5 1 是得不到答案的。但是它确实有答案5/(5 –
1/5)。后来调试了才发现了一个问题:如果我定义两个变量float number1,number2,分别赋值 number1 = 1.0,number2 = 5.0;然后判断 1.0/5.0 == numbers1/number2 。这个表达式的值是0(在我的cfree上是这么多)。[code lang="js"]
#include <stdio.h>
int main()
{
float number1,number2;
number1 = 1.0;number2 = 5.0;
printf("%d\n",(1.0/5.0) == (number1/number2));
return 0;
}
[/code]输出0。但是你将5.0改成2.0的话它的值又是1.所以我的程序在这里就不灵了,我不是太清楚浮点数的运算会不会使精度减少。(这是一个需要解决的问题),但是我的递归程序逻辑是正确的。程序的源码在这里:点击下载http://download.csdn.net/detail/dabentuaipangou/4409732。
(全文完)
c语言24点游戏代码回法,C语言解24点游戏程序相关推荐
- 游戏代码大全_Switch新游推荐之世界游戏大全51,茶余饭后的消遣
任天堂于2020年6月5日在Nintendo Switch平台推出<世界游戏大全51>,并且支持了中文!这款游戏收录了51种世界流行的桌面游戏,支持在线.离线联机对战.买了一款游戏却享受了 ...
- python拼图游戏代码的理解_Python编写的数字拼图游戏(含爬山算法人机对战功能)...
数字拼图游戏与拼图游戏原理一致,把打乱了的数字或图片经移动,拼成给定的目标数字或图片,其中总有一个空的地方,让相邻(上下左右)的方块移动,直至达到目标. 游戏代码由浙江温州永嘉县教师发展中心应根球老师 ...
- python游戏代码运行不了_用Python写游戏,不到十分钟就学会了
安装pygame 请自行下载对应python版本的pygame 运行以下命令 创建Pygame窗口及响应用户输入 新建一个文件夹alien_invasion,并在文件夹中新建alien_invasio ...
- (1 24) 3 java代码_《Java语言程序设计》测试题及参考答案(第1部分)
一.单项选择题 1.Java Applet编程时用户的Applet程序类的正确定义是哪一种 ? (1)class MyApplet extends applet{ } (2)class MyApple ...
- c语言多组数据判断回文字符串,详解判断回文字符串跟回文数算法的C语言代码...
详解判断回文字符串和回文数算法的C语言代码! 一.判断一个字符串是否为回文字符串 #include #include #include //包含strlen #define YES 1 #define ...
- python飞机大战游戏代码_用python语言如何实现飞机大战游戏
python语言博大精深,它目前来说已经很火热了,在学好python的同时还要学会用python,可以使用它来开发一些项目最好不过了.下面小编用python实现一个小游戏-飞机大战,使用的python ...
- c语言别踩白块小游戏代码,自学easeljs 根据别踩白块游戏规则自己写的代码
主要基于 -------easeljs-0.7.1.min.js----- 去制作这个游戏 思路:主要思路是以行为单位 绑定可点击行 选中则讲 移动最外层容器继续绑定可点击行的下一行 ...
- 2048游戏代码java总结_软件工程——Java版2048游戏学习报告
2048游戏学习报告 姓名:王浩 专业:计算机科学与技术 年级:15级4班 学号:201510411420 目录 一. 前言 ...
- c语言上20级台阶递归法,c语言递归算法.pptx
计算机语言与程序设计;第八章 递归算法;从前有座山,山上有座庙,庙里有一个老和尚和一个小和尚,老和尚正在给小和尚讲故事.讲的是什么故事呢?他说,从前--;Recursion- See "Re ...
最新文章
- 支持国内版Office 365的PowerShell模块现已发布
- 读取接口XML和批量导入数据SqlBulkCopy
- 国内大学毕业论文LaTeX模板集合
- eclipse常用的快捷键
- CSS——CSS创建样式表
- 适合Web服务器的iptables规则
- 安装网站+服务器连接失败,为什么我都安装完成后是服务器连接失败啊
- java.lang.NullPointerException org.apache.jsp.index_jsp._jspInit(index_jsp.java:22)
- 想成为架构师,你必须掌握的CAP细节
- wav文件头修复_贴唱混音之二——音频修复
- Python入门:jieba库的使用
- ELAS_ROS算法 在 KITTI数据集 实践
- android banner3d,XBanner实现3D画廊效果
- 【解决方案】解除微信群二维码100人扫码限制和7天有效期!
- html代码在线运行_在线运行html代码
- 010-flutter dart代码后台执行,没有界面的情况下
- Notion Avatar Maker - 一个简单有趣的 Notion 风格头像生成器,可生成百万个免费商用的头像
- linux mlocate.db文件文件过大
- 苹果MacBook Air M2开箱测评 M2版MacBook Air真实体验感受
- golang模拟抢票
热门文章
- 【Elasticsearch】我们如何将 100 秒的 elasticsearch 查询优化为不到一秒。
- 【kafka】kafka 2.3 关于控制Broker端入站连接数的讨论
- 【Kafka】Kafka SCRAM认证 ERROR [ZooKeeperClient] Auth failed
- 20-10-026-安装-KyLin-2.6.0-单机版安装(MAC官网下载)-spark引擎
- 【Flink】Flink The TaskSlotTable has to be started
- Spring Boot : Spring boot 的 AutoConfigurationImportSelector 自动配置原理
- 07-windows下Elasticsearch安装-elasticsearch-service服务
- 04-并发编程-CountDownLatch、CyclicBarrier和 Semaphore
- Linux系统中安装软件的三种方法(一)
- 京东一面:说出ThreadLocal的使用场景及使用方式