该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

前几天在微博上看到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点游戏程序相关推荐

  1. 游戏代码大全_Switch新游推荐之世界游戏大全51,茶余饭后的消遣

    任天堂于2020年6月5日在Nintendo Switch平台推出<世界游戏大全51>,并且支持了中文!这款游戏收录了51种世界流行的桌面游戏,支持在线.离线联机对战.买了一款游戏却享受了 ...

  2. python拼图游戏代码的理解_Python编写的数字拼图游戏(含爬山算法人机对战功能)...

    数字拼图游戏与拼图游戏原理一致,把打乱了的数字或图片经移动,拼成给定的目标数字或图片,其中总有一个空的地方,让相邻(上下左右)的方块移动,直至达到目标. 游戏代码由浙江温州永嘉县教师发展中心应根球老师 ...

  3. python游戏代码运行不了_用Python写游戏,不到十分钟就学会了

    安装pygame 请自行下载对应python版本的pygame 运行以下命令 创建Pygame窗口及响应用户输入 新建一个文件夹alien_invasion,并在文件夹中新建alien_invasio ...

  4. (1 24) 3 java代码_《Java语言程序设计》测试题及参考答案(第1部分)

    一.单项选择题 1.Java Applet编程时用户的Applet程序类的正确定义是哪一种 ? (1)class MyApplet extends applet{ } (2)class MyApple ...

  5. c语言多组数据判断回文字符串,详解判断回文字符串跟回文数算法的C语言代码...

    详解判断回文字符串和回文数算法的C语言代码! 一.判断一个字符串是否为回文字符串 #include #include #include //包含strlen #define YES 1 #define ...

  6. python飞机大战游戏代码_用python语言如何实现飞机大战游戏

    python语言博大精深,它目前来说已经很火热了,在学好python的同时还要学会用python,可以使用它来开发一些项目最好不过了.下面小编用python实现一个小游戏-飞机大战,使用的python ...

  7. c语言别踩白块小游戏代码,自学easeljs 根据别踩白块游戏规则自己写的代码

    主要基于       -------easeljs-0.7.1.min.js-----   去制作这个游戏 思路:主要思路是以行为单位 绑定可点击行 选中则讲 移动最外层容器继续绑定可点击行的下一行 ...

  8. 2048游戏代码java总结_软件工程——Java版2048游戏学习报告

    2048游戏学习报告 姓名:王浩 专业:计算机科学与技术 年级:15级4班 学号:201510411420 目录 一. 前言                                       ...

  9. c语言上20级台阶递归法,c语言递归算法.pptx

    计算机语言与程序设计;第八章 递归算法;从前有座山,山上有座庙,庙里有一个老和尚和一个小和尚,老和尚正在给小和尚讲故事.讲的是什么故事呢?他说,从前--;Recursion- See "Re ...

最新文章

  1. 支持国内版Office 365的PowerShell模块现已发布
  2. 读取接口XML和批量导入数据SqlBulkCopy
  3. 国内大学毕业论文LaTeX模板集合
  4. eclipse常用的快捷键
  5. CSS——CSS创建样式表
  6. 适合Web服务器的iptables规则
  7. 安装网站+服务器连接失败,为什么我都安装完成后是服务器连接失败啊
  8. java.lang.NullPointerException org.apache.jsp.index_jsp._jspInit(index_jsp.java:22)
  9. 想成为架构师,你必须掌握的CAP细节
  10. wav文件头修复_贴唱混音之二——音频修复
  11. Python入门:jieba库的使用
  12. ELAS_ROS算法 在 KITTI数据集 实践
  13. android banner3d,XBanner实现3D画廊效果
  14. 【解决方案】解除微信群二维码100人扫码限制和7天有效期!
  15. html代码在线运行_在线运行html代码
  16. 010-flutter dart代码后台执行,没有界面的情况下
  17. Notion Avatar Maker - 一个简单有趣的 Notion 风格头像生成器,可生成百万个免费商用的头像
  18. linux mlocate.db文件文件过大
  19. 苹果MacBook Air M2开箱测评 M2版MacBook Air真实体验感受
  20. golang模拟抢票

热门文章

  1. 【Elasticsearch】我们如何将 100 秒的 elasticsearch 查询优化为不到一秒。
  2. 【kafka】kafka 2.3 关于控制Broker端入站连接数的讨论
  3. 【Kafka】Kafka SCRAM认证 ERROR [ZooKeeperClient] Auth failed
  4. 20-10-026-安装-KyLin-2.6.0-单机版安装(MAC官网下载)-spark引擎
  5. 【Flink】Flink The TaskSlotTable has to be started
  6. Spring Boot : Spring boot 的 AutoConfigurationImportSelector 自动配置原理
  7. 07-windows下Elasticsearch安装-elasticsearch-service服务
  8. 04-并发编程-CountDownLatch、CyclicBarrier和 Semaphore
  9. Linux系统中安装软件的三种方法(一)
  10. 京东一面:说出ThreadLocal的使用场景及使用方式