扑克牌接龙游戏代码c语言,C++点扑克牌游戏(含源码).doc
实验设计方案
实验内容与目的(简单介绍实验内容,说明实验目的)
实验目的:实现扑克牌游戏:对于任意的四个1到13的整数(四张扑克牌),求能算出24的表达式;运算符有()+-*/;若无解则输出相应的信息。
实验内容:你的具体选择(要详细)
文件输入(input.txt)输出(output.txt),输出全部结果;
——————————————————————————————————————
2、实验准备工作(阐述解决问题所涉及的算法思想,至少要画一个算法流程图来说明)
本次实验相当于,给出四个数字,要求,在其间添加运算符和括号,使得计算结果等于24。
括号的放置即为决定哪几个数先进行计算。所以,我们先确定首先进行计算的两个相邻的数,计算完成后,就相当于剩下三个数字,仍需要在它们之间添加符号;然后再决定在这三个数中哪两个相邻的数先计算。由此,我们就成功解决了数字的运算次序问题,此时不需要再考虑不同运算符号的优先级问题,因为括号的优先级高于加减乘除。
通过循环,我们可以得到第一第二第三次计算的运算符,再通过计算,就可以得出和,若和等于24,即为所求解。
在输出格式中,由于括号的放置共六种情况,故根据计算先后顺序的不同,输出时在不同地方放置括号;
以下为循环计算的流程图:
表示循环获取;
表示计算数值
以下为计算函数的流程图:
——————————————————————————————————————
二、实验步骤、测试与结果分析
1、源程序的设计(在此附上源程序(cpp文件)清单)
#include
#include
#include
using namespace std;
char sign[4]={'+','-','*','/'};
//定义一个全局变量,用于储存加减乘除符号,方便下面符号判断
class game24point
//24点纸牌游戏类
{
private:
double a[4];
//为实现精确计算,防止计算结果为小数却被强制转换为整数,采用double变量
public:
game24point();
//构造函数
double calcute(double,double,char);
//计算函数,给出一个符号两个有顺序的数,计算结果
void search();
//搜索函数,用于寻找合适的解
void print();
//打印得到的四张纸牌的数值
};
game24point::game24point()
{
char ch[4];
//由于纸牌中除了数字还有AJQK等字符,故使用字符数组
ifstream infile("input.txt");
if(!infile)
//若打开失败
{
cout<
exit(1);
}
for(int i=0;i<4;i++) infile>>ch[i];
//在input文件中读取数据
cout<
cout<
cout<
cout<
cout<
for(i=0;i<4;i++)
{
if(ch[i]=='A') a[i]=10;
else if(ch[i]=='J') a[i]=11;
else if(ch[i]=='Q') a[i]=12;
else if(ch[i]=='K') a[i]=13;
else if(ch[i]=='1') a[i]=1;
else if(ch[i]=='2') a[i]=2;
else if(ch[i]=='3') a[i]=3;
else if(ch[i]=='4') a[i]=4;
else if(ch[i]=='5') a[i]=5;
else if(ch[i]=='6') a[i]=6;
else if(ch[i]=='7') a[i]=7
扑克牌接龙游戏代码c语言,C++点扑克牌游戏(含源码).doc相关推荐
- 接水果游戏代码 c语言,制作接水果游戏
今天是儿童节,让老师教同学们做个接水果的小游戏吧. 我们新建一个项目,把小猫角色删除,然后选择一个碗的角色来接水果: 把碗移动到白色画布的下半部分,让它可以随着鼠标的移动而左右移动,但是不需要上下移动 ...
- Qt小游戏之数字华容道(百行代码搭雏形,可玩;含源码+注释)
文章目录 一.数字华容道,样图如下 二.废话少说直接上代码 1.首先是代码文件分析 2.CLabel的源码 3.CMainWindow的源码 4.main文件 总结 一.数字华容道,样图如下 相信大家 ...
- python小游戏之外星人入侵之pygame实战应用(含源码下载)
这里写目录标题 一.思维导图 1.创建Pygame窗口及响应用户输入(主) 2.飞船 3.外星人 4.设置类 5.状态类 6.最终效果图 7.源代码下载 以下为部分代码展示,更多完整核心代码详见源代码 ...
- Java实战小游戏《flapper Bird》完整版,含源码
Flapper Bird 目录 一.前言 二.素材准备 1.背景图片 2.背景音乐 三.建立工程 四.代码实现 1.小鸟类 2. 地面类 3. 柱子类 4. 音乐类 5. 游戏类 五.效果展示 六 ...
- c语言英语词典设计案例,c语言课程设计-电子英汉词典(含源码).doc
. PAGE . C语言课程设计 软件学院 指导老师: 学号: 姓名: 一.实验题目及要求 题目:电子英汉词典 设计要求 : 1.用图形用户界面实现 2.能够编辑词典库中的信息 3.能够实现英译汉,汉 ...
- EMNLP2022 | 多模态“讽刺语言”检测框架(南洋理工 含源码)
来源: AINLPer微信公众号(每日干货分享!!) 编辑: ShuYini 校稿: ShuYini 时间: 2022-10-23 引言 讽刺是一种语言表达方式,即其字面意义和隐含意图之间存在差异. ...
- t12电烙铁c语言程序,T12白光烙铁控制器源码.doc
T12白光烙铁控制器源码 T12白光烙铁控制器源码#include "STC15F204EA.h"//单片机头文件,24MHz时钟频率#include "INTRINS. ...
- HTML5期末大作业:游戏网页设计——穿越火线6页(代码质量好) 学生DW网页设计作业源码 web课程设计网页规划与设计
HTML5期末大作业:游戏网页设计--穿越火线6页(代码质量好) 学生DW网页设计作业源码 web课程设计网页规划与设计 HTML+CSS+JavaScript(毕业设计) 常见网页设计作业题材有 个 ...
- c语言贪吃蛇游戏源码下载,c语言贪吃蛇游戏源码.doc
c语言贪吃蛇游戏源码.doc /*运行是按任意键开始,不过呢,反向也算输哟*/include include include include include include include defin ...
最新文章
- 北航云计算公开课 01 Introduction to Cloud Computing
- LeetCode 85. Maximal Rectangle --python,java解法
- C#中的方法(上):
- DOS 网络命令之 ipconfig
- 封装jquery的ajax,便于加载等待提示框
- php mysql数据库同步_实现MySQL数据库同步实例演示_MySQL
- minianaconda安装图形化界面
- cUBtYhaFzo
- 手机需不需要更新系统?
- bch纠错码 码长8_BCH码-BCH码原理-BCH码分类-BCH码的应用-什么是BCH码-测控百科-CK365测控网...
- PS批量处理_将图片批量转为jpg
- IndentationError: unindent does not match any outer indentation level 错误解决
- win10专业版关闭Windows Defender Antivirus
- wince tfp telnet
- 为K8S集群申请Let‘s Encrypt证书
- 简化版的DRCNN代码(Python)
- C++练习11: 栈 和队列
- GSM 07.10 MUX(multiplexer protocol)
- VR全景展示,让餐饮店线上+线下更加吸引人
- JAVA设计模式七大原则