24点游戏程序设计报告

24点游戏程序设计报告

ID:47486133

大小:57.05 KB

页数:13页

时间:2020-01-12

24点游戏程序设计报告_第1页
24点游戏程序设计报告_第2页
24点游戏程序设计报告_第3页
24点游戏程序设计报告_第4页
24点游戏程序设计报告_第5页
资源描述:

《24点游戏程序设计报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、程序设计工程实训报告湖南大学程序设计工程实训报告题目:24点游戏学院:工商管理学院专业班级:财务管理一班姓名:陈黎希学号:20111709109指导教师:王涛12程序设计工程实训报告目录1、程序功能简介································22、本人完成的主要工作··························23、设计方案:l1设计分析································2l2模块的功能及程序说明····················2l3核心算法流程图··························

2、3l4核心源程序模块12程序设计工程实训报告··························4l5操作方法简介及实验结果·················4l6设计体会································4附录···········································6一、程序功能简介题目要求在输入4个数后,程序对这个4个数进行运算,若能计算出结果等于24,即输出运算过程。接到题目的时候,手上并无其他资料,需要自己全动手设计才能到达目标,而目标是在输入四个数之后,先进行全排列,然后进行全运算,从而最终得到结

3、果以输出。12程序设计工程实训报告二、本人完成的主要工作l程序思路的构建l源代码的编写l程序运行及调试l程序总结三、设计方案1、设计分析关于这个计算24游戏的设计,首先我将题目看成两部分,一部分为运算数,一部分为运算符。首先由于有四个数,则只有三个运算符,由于涉及了括号,个人认为用穷举法才能全面地进行说有的运算,我们可以将运算符和括号这部分归为主运算部分,在这部分中,运算数的位置固定,但是运算符和括号的位置会改变,而且程序主要就是在这部分运算,直接将数值引入,然后计算判断是否等于24,若等于24,则输出数值和这些运算符、括号的位置构成的运算式;然而,这是不够全面的,

4、因为还要考虑运算数的排列位置,于是有了第二部分,运算数的位置全排列,同样是采用穷举法,将运算数全排列,在每个排列后面调用主运算的方法,从而达到全面不遗漏地计算。在MAIN函数中,我们仅需要记录输入的4个数字,然后将数值用在全排列函数中即可。整个程序的设计看起来很繁琐,但在运用上很简单,能简明扼要地表现出来。2、模块的功能及程序说明本程序的主要功能就是把输入的四个数用简单的四则运算和括号计算得出24,然后输出其算法。本程序所做的就是把四个数能进行的所有运算做一遍,然后把其中结果为24的算法输出。3、核心算法流程图12程序设计工程实训报告开始输入4个数赋值进行排列方法在

5、排列方法中运算判断运算是否等于24输出运算式是结束4、核心源程序模块#includevoidmain()12程序设计工程实训报告{floata,b,c,d;A:printf("请输入4个整数:");scanf("%f%f%f%f",&a,&b,&c,&d);printf("运算结果如下:");arrangement(a,b,c,d);printf("");gotoA;}5、操作方法简介及实验结果1)首先输入四个数字:2)然后得出结果,并进行下一次计算:6、设计体会因为整个程序的算法比较简单,只运用了枚举法然后嵌入使用,在编写的前期只是较

6、为繁琐而没有出现编译上的问题,只是有些计算情况开始没想到,在自己和同学的帮助下进行了完善。但在初始设计的时候,并没有想到要进行运算数的位置排列,在考虑之后,决定要加入运算数的位置排列从而全面地进行运算。设计运算数的位置排列,最早是希望用递归调用的方法来完成,但是由于时间和个人的原因,未能成功,最终仍是采取了穷举法,虽然未能成功,但是也让我对递归12程序设计工程实训报告算法的调用有了一定的理解。12程序设计工程实训报告附录:自定义函数及其功能一、枚举所有算法voidcalculation(floata,floatb,floatc,floatd){if(a+b+c+d=

7、=24){printf("%1.0f+%1.0f+%1.0f+%1.0f=24",a,b,c,d);}if(a+b+c-d==24){printf("%1.0f+%1.0f+%1.0f-%1.0f=24",a,b,c,d);}if(a+b+c*d==24){printf("%1.0f+%1.0f+%1.0f*%1.0f=24",a,b,c,d);}if(a+(b+c)*d==24){printf("%1.0f+(%1.0f+%1.0f)*%1.0f=24",a,b,c,d);}if((a+b+c)*d==24){printf("(%1.0f+%1

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。