//By cananpeng
//枚举,随机数模型,函数功能分解,自定义函数。
#include <iostream>
#include <cstdlib>
using namespace std;enum GAMESTATUS{ win,lose,playing};//类型 还要有对应的变量
int main(){int sum,point;GAMESTATUS status;unsigned int seed;int rolldice();cout<<"plz enter an unsigned integer as seed : ";cin>>seed;//输入随机数种子,一会要通过srand送进rand函数中。输入随机数相同时,rand得到的结果是一样的。srand(seed);sum=rolldice();//第一轮switch(sum){case 7:case 11:status=win;break;case 2:case 3:case 12:status=lose;break;default:status=playing;point=sum;cout<<"point is "<<point<<endl;break;//default也会找break的标识符跳出选择。}//第二轮到结束,判别;第二轮的和等于第一轮的点数,因此要注意语句顺序。题中简化了难度,点数随着轮数增加不变,若点数发生了变化呢?也很简单,增加一条点数的赋值语句即可while(status==playing){sum=rolldice();//例如,计算第二轮的和if(sum==point) status=win;else if (sum==7) status=lose;}//注意观察此处的逻辑,用的是else if ,而不是else(非你即我),用的是多分支。if(status==win)cout<<"player wins"<<endl;if(status==lose)cout<<"player loses"<<endl;return 0;
}int rolldice(){//设计非常巧妙。因为随机的数字可以产生不受限,但是骰子的结果只有1-6,因此选择了除6取余(0-5)加1;//不选择除7取余,0-6。多了一个0的情况。int die1=1+rand()%6;int die2=1+rand()%6;int sum=die1+die2;cout<<"player rolled"<<die1<<"+"<<die2<<"="<<sum<<endl;return sum;
}

枚举,随机数模型,函数功能分解---扔骰子随机数游戏相关推荐

  1. python产生随机数的函数_python之随机数函数的实现示例

    前言 这是俺写的第一篇关于python的博客,分享一下我所整合的python中的随机数函数,就当作是自己的一个笔记,也可以供像我一样的python入门新手小白参考学习.希望可以记录下自己的学习过程. ...

  2. C语言学习笔记---随机数rand()函数

      在生活中很多场景下都需要产生随机数,比如抽奖,打牌,游戏等场景下就需要使用随机数.在C语言标准库函数里面有专门用来产生随机数的函数rand,它的函数原型如下: int __cdecl rand(v ...

  3. c语言随机字符rand,C语言中生产随机数 rand()函数

    一:如果你只要产生随机数而不需要设定范围的话,你只要用rand()就可以了:rand()会返回一随机数值, 范围在0至RAND_MAX 间.RAND_MAX定义在stdlib.h, 其值为214748 ...

  4. c语言随机数生成0 99函数,C语言生成随机数的函数、延时函数

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 下面C语言代码使用了生成随机数的函数.延时函数.请大家仔细观察其显示效果. 从以下代码,我们可以得出一个重要的结论:当上述两类函数被放入循环时,应作出一定 ...

  5. c库的rand/random随机数产生函数性能差?

    有网文称c标准库的rand/random随机数产生函数性能极差.一直信以为真,但从没做过验证.最近因其他因缘,写了些代码专门验证rand/random的性能.结果大出意料,颠覆之前的成见. 结论如下: ...

  6. 给你一个能生成1到5随机数的函数,用它写一个函数生成1到7的随机数

    给你一个能生成1到5随机数的函数,用它写一个函数生成1到7的随机数 文章目录 给你一个能生成1到5随机数的函数,用它写一个函数生成1到7的随机数 一.问题 二.分析 三.错解 四.正解一 五.正解二 ...

  7. c语言随机数循环延迟,C语言生成随机数的函数、延时函数

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 下面C语言代码使用了生成随机数的函数.延时函数.请大家仔细观察其显示效果. 从以下代码,我们可以得出一个重要的结论:当上述两类函数被放入循环时,应作出一定 ...

  8. 用PHP生成随机数的函数

    用PHP生成随机数的函数 转自:http://www.jbxue.com/article/5034.html 介绍:在早期的php中生成一个随机字符串时,总是先创建一个字符池,然后用一个循环和mt_r ...

  9. C语言生成随机数的函数,为什么循环后随机数都一样?

    代码如下: #include <stdio.h> #include <time.h> int main(int argc, char **argv) {int a ,b;cha ...

最新文章

  1. Android自定义相机详细讲解
  2. MySQL下mysql.sock丢失问题的解决[ubuntu, linux, mysqld.sock]
  3. Linux下把目录拷贝到全部同名目录的脚本
  4. python批量读取根目录下文件内容并保存
  5. python因子分析案例_Python——因子分析(KMO检验和Bartlett's球形检验)
  6. 纹个鸡儿天才小熊猫_给熊猫用户的5个提示
  7. 伪代码block转换成程序流程图_程序设计基础
  8. 大数据时代,如何做好数字化精益生产?附26页智慧工厂解决方案
  9. ubuntu中执行jupyter格式代码
  10. 计算机管理员初级试题及答案,计算机管理员测试题及答案.doc
  11. Mondrian and OLAP
  12. Python3.5 学习八 附加知识点 paramiko和rsa非对称秘钥的适用
  13. 【技术贴】解决开机本地连接出来慢,本地连接开机后出来时间慢
  14. aspectjweaver和aspectjrt的区别
  15. centos7安装W3AF
  16. 一起talk C栗子吧(第一百九十六回:C语言实例--DIY less命令五 )
  17. Java之三目运算符
  18. 美森快船收费标准和操作流程是怎样的?
  19. 摆脱外包进大厂,苦逼翻身把歌唱,20K、30K、40K!咬牙硬吃下这份儿数据结构与算法手册
  20. Fisher判别分析

热门文章

  1. 第五天学习--存储结构与磁盘划分
  2. python处理点云数据_python将指定点云文件(asc)转换为PCD格式
  3. android 美团拆包,如何进行拆包合包操作?
  4. 激光雷达的应用及发展前景
  5. Vue:前端体系与前后端分离
  6. 果粉沸腾,iPhone6领衔苹果最顶级明星阵容
  7. 大学数据库创建与查询实战——查询
  8. logging模块详细使用
  9. appStore上传苹果应用程序软件发布流程
  10. 云和恩墨数据库MogDB荣获2021年度IT168最佳创新产品奖