第15周项目2:洗牌
来源:互联网 发布:南京数据恢复中心 编辑:程序博客网 时间:2024/06/02 07:28
/* * Copyright(c)2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名称:第15周项目2:洗牌 * 作者:于子娴 * 完成日期:2016.6.8 * 版本号:v1.0 * * 问题描述:在扑克牌游戏中,每次游戏开始都要求把54张牌重新排列一下,称为洗牌。试编写程序将一副扑克牌(用54个整数1~54表示)随机洗好后,顺序输出54张牌的情况。 * 输入描述: * 程序输出: */#include <ctime>#include <vector>#include <list>#include <iostream>#include <iterator>#include <cstdlib>using namespace std;using namespace std;typedef vector<int> IntVector;typedef unsigned int VIndex;void vectorShuffle(IntVector &unshuffled,IntVector &shuffled){ VIndex p,size=unshuffled.size(); while(size) { p=rand()%size--; shuffled.push_back(unshuffled[p]); unshuffled.erase(unshuffled.begin()+p); }}int main(){ ostream_iterator<int> os(cout," "); srand(time(NULL)); IntVector c,sc; for(VIndex i=1; i<=54; i++) { c.push_back(i); } cout<<"洗牌前:"<<endl; copy(c.begin(),c.end(),os); cout<<endl; vectorShuffle(c,sc); cout<<endl; cout<<"洗牌后:"<<endl; copy(sc.begin(),sc.end(),os); cout<<endl<<endl; return 0;}
运行结果:
0 0
- 第15周项目2:洗牌
- 第15周项目2:洗牌
- 第15周-项目2-洗牌
- 第15周项目2--洗牌
- 第15周项目2-洗牌
- 第15周 项目2---洗牌
- 第15周项目 2—洗牌
- 第15周实践项目项目2——洗牌
- 第15周实践项目-洗牌(2)
- 第15周项目-2-洗牌-使用STL的算法
- 第15周项目二—洗牌(2)
- 第15周实践项目-洗牌(3)
- 第15周项目二—洗牌(1)
- 第15周项目二—洗牌(3)
- 第15周项目二洗牌(4)
- 第十五周项目2-洗牌
- 十五周项目2 洗牌
- 第十五周项目2洗牌
- I/O流 && 装饰者模式
- TCPdump抓包命令详解
- 在线api文档
- 我的数据分析工作内容
- Tomcat8 console控制台不正常显示中文
- 第15周项目2:洗牌
- ZooKeeper典型应用场景(转)
- POJ-1276 Cash Machine(经典多重背包)
- 解决Xcode 9.2系统真机测试时出现 could not find developer disk image问题
- 安卓学习之---SAX方式解析XML文件
- ZooKeeper概述(转)
- 电商之梳理servlet知识---javaweb基础
- 第十五周项目一 程序填空
- arm-none-linux-gnueabi-gcc install