实验设计方案

实验内容与目的(简单介绍实验内容,说明实验目的)

实验目的:实现扑克牌游戏:对于任意的四个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相关推荐

  1. 接水果游戏代码 c语言,制作接水果游戏

    今天是儿童节,让老师教同学们做个接水果的小游戏吧. 我们新建一个项目,把小猫角色删除,然后选择一个碗的角色来接水果: 把碗移动到白色画布的下半部分,让它可以随着鼠标的移动而左右移动,但是不需要上下移动 ...

  2. Qt小游戏之数字华容道(百行代码搭雏形,可玩;含源码+注释)

    文章目录 一.数字华容道,样图如下 二.废话少说直接上代码 1.首先是代码文件分析 2.CLabel的源码 3.CMainWindow的源码 4.main文件 总结 一.数字华容道,样图如下 相信大家 ...

  3. python小游戏之外星人入侵之pygame实战应用(含源码下载)

    这里写目录标题 一.思维导图 1.创建Pygame窗口及响应用户输入(主) 2.飞船 3.外星人 4.设置类 5.状态类 6.最终效果图 7.源代码下载 以下为部分代码展示,更多完整核心代码详见源代码 ...

  4. Java实战小游戏《flapper Bird》完整版,含源码

    Flapper Bird 目录 一.前言 二.素材准备 1.背景图片 2.背景音乐 三.建立工程 四.代码实现 1.小鸟类 2. 地面类 3.  柱子类 4.  音乐类 5. 游戏类 五.效果展示 六 ...

  5. c语言英语词典设计案例,c语言课程设计-电子英汉词典(含源码).doc

    . PAGE . C语言课程设计 软件学院 指导老师: 学号: 姓名: 一.实验题目及要求 题目:电子英汉词典 设计要求 : 1.用图形用户界面实现 2.能够编辑词典库中的信息 3.能够实现英译汉,汉 ...

  6. EMNLP2022 | 多模态“讽刺语言”检测框架(南洋理工 含源码)

    来源: AINLPer微信公众号(每日干货分享!!) 编辑: ShuYini 校稿: ShuYini 时间: 2022-10-23 引言  讽刺是一种语言表达方式,即其字面意义和隐含意图之间存在差异. ...

  7. t12电烙铁c语言程序,T12白光烙铁控制器源码.doc

    T12白光烙铁控制器源码 T12白光烙铁控制器源码#include "STC15F204EA.h"//单片机头文件,24MHz时钟频率#include "INTRINS. ...

  8. HTML5期末大作业:游戏网页设计——穿越火线6页(代码质量好) 学生DW网页设计作业源码 web课程设计网页规划与设计

    HTML5期末大作业:游戏网页设计--穿越火线6页(代码质量好) 学生DW网页设计作业源码 web课程设计网页规划与设计 HTML+CSS+JavaScript(毕业设计) 常见网页设计作业题材有 个 ...

  9. c语言贪吃蛇游戏源码下载,c语言贪吃蛇游戏源码.doc

    c语言贪吃蛇游戏源码.doc /*运行是按任意键开始,不过呢,反向也算输哟*/include include include include include include include defin ...

最新文章

  1. 北航云计算公开课 01 Introduction to Cloud Computing
  2. LeetCode 85. Maximal Rectangle --python,java解法
  3. C#中的方法(上):
  4. DOS 网络命令之 ipconfig
  5. 封装jquery的ajax,便于加载等待提示框
  6. php mysql数据库同步_实现MySQL数据库同步实例演示_MySQL
  7. minianaconda安装图形化界面
  8. cUBtYhaFzo
  9. 手机需不需要更新系统?
  10. bch纠错码 码长8_BCH码-BCH码原理-BCH码分类-BCH码的应用-什么是BCH码-测控百科-CK365测控网...
  11. PS批量处理_将图片批量转为jpg
  12. IndentationError: unindent does not match any outer indentation level 错误解决
  13. win10专业版关闭Windows Defender Antivirus
  14. wince tfp telnet
  15. 为K8S集群申请Let‘s Encrypt证书
  16. 简化版的DRCNN代码(Python)
  17. C++练习11: 栈 和队列
  18. GSM 07.10 MUX(multiplexer protocol)
  19. VR全景展示,让餐饮店线上+线下更加吸引人
  20. JAVA设计模式七大原则

热门文章

  1. chatterbot php,一行Python代码实现夸夸聊天机器人
  2. Pygame 官方文档 - pygame.scrap
  3. 苟利国家生死以,岂因祸福避趋之。
  4. Tudor.CutViewer.Lathe.v2.2.DC250403
  5. 【算法笔记】全域哈希表
  6. 特征模型和特征-这是什么?
  7. 小学三年级计算机上册课后反思,小学三年级上册教学反思三篇
  8. torque 安装排错
  9. 【空间单细胞组学】第2期:乳腺癌患者经anti-PD1治疗后,肿瘤内变化的单细胞图谱
  10. Nacos 中 DataId配置信息