C++抽奖程序实现方法
本文实例讲述了C++抽奖程序实现方法。分享给大家供大家参考。具体实现方法如下:
一、int rand()可以生成从[0, 65536)之间均匀分布的随机数。
现要求实现:有30万员工,使用rand()写一个抽奖程序,抽出人100获奖。
#include <iostream> #include <set> using namespace std; typedef set<int> ISET; ISET GetPridePersonId(const int num, const int pride_num) { int id; ISET iset; while (1) { id = (int)((double)rand() / RAND_MAX * num) % (num - 1); if (iset.find(id) == iset.end()) { iset.insert(id); } if (iset.size() >= pride_num) { break; } } return iset; } void print(ISET &iset) { ISET::iterator iter; cout<<"item as :\n"; for (iter = iset.begin(); iter != iset.end(); ++ iter) { cout<<*iter<<"\n"; } } int main(int argc, char **argv) { const int total_person = 300000; const int total_pride_person = 100; ISET iset = GetPridePersonId(total_person, total_pride_person); print(iset); return 0; }
二、主要容易出错的地方:
①当rand()范围要求扩大的时候,浮点与整形数之间的强制转换问题。
int randId = (int)((double)rand() / RAND_MAX * num);
②STL中set的使用是否非常熟练?
希望本文所述对大家的C++程序设计有所帮助。
相关推荐
-
基于C#实现简单的随机抽奖小程序
废话不多说了,直接给大家贴代码了.具体代码如下所示: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using Sys
-
javascript 随机抽奖程序代码
随机抽奖程序 请单击开始抽奖 开始抽奖(S) 停止(O) [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
-
C++抽奖程序实现方法
本文实例讲述了C++抽奖程序实现方法.分享给大家供大家参考.具体实现方法如下: 一.int rand()可以生成从[0, 65536)之间均匀分布的随机数. 现要求实现:有30万员工,使用rand()写一个抽奖程序,抽出人100获奖. #include <iostream> #include <set> using namespace std; typedef set<int> ISET; ISET GetPridePersonId(const int num, con
-
javascript实现抽奖程序的简单实例
昨天开年会的时候看到一个段子说唯品会年会抽奖,结果大奖都被写抽奖程序的部门得了,CTO现场review代码. 简单想了一下抽奖程序的实现,花了十几分钟写了一下,主要用到的知识有数组添加删除,以及ES5 数组新增的indexOf,filter方法, 为了刷新页面后仍能保存已中奖记录,用了localStorage存盘. 刚开始是用随机数直接取编号,发现要剔除已中奖的人很麻烦,如果重复要递归调用,如果中奖的人太多到最后随机数取到已中奖的人概率太大,所以换用两个数组实现,一个记录已中奖的号码,一个记录未
-
jQuery+PHP实现微信转盘抽奖功能的方法
本文实例讲述了jQuery+PHP实现微信转盘抽奖功能的方法.分享给大家供大家参考,具体如下: 本文结合实例将使用jQuery和PHP来实现转盘抽奖程序. 准备工作 首先要准备素材,抽奖的界面用到两张图片,圆盘图片和指针图片,实际应用中可以根据不同的需求制作不同的圆盘图片. 接着制作html页面,实例中我们在body中加入如下代码: <div class="demo"> <div id="disk"></div> <div
-
JS数字抽奖游戏实现方法
本文实例讲述了JS数字抽奖游戏实现方法.分享给大家供大家参考.具体实现方法如下: <!doctype html> <html> <head> <meta charset="utf-8"> <title>新年网页抽奖程序</title> <style type="text/css"> * {margin:0; padding:0;} ul,li {list-style-type:non
-
python实现年会抽奖程序
用python来实现一个抽奖程序,供大家参考,具体内容如下 主要功能有 1.从一个csv文件中读入所有员工工号 2.将这些工号初始到一个列表中 3.用random模块下的choice函数来随机选择列表中的一个工号 4.抽到的奖项的工号要从列表中进行删除,以免再次抽到 初级版 这个比较简单,缺少定制性,如没法设置一等奖有几名,二等奖有几名 import csv #创建一个员工列表 emplist = [] #用with自动关闭文件 with open('c://emps.csv') as f: e
-
200行HTML+JavaScript实现年会抽奖程序
本文实例为大家分享了js实现年会抽奖程序的具体代码,供大家参考,具体内容如下 需求分析 1.多轮抽奖,每轮只有3个环节:展示奖品图,人名闪动,停止闪动确定中奖名单 2.中奖分级,例如试用期员工不能中二等奖或以上 3.每轮抽奖的中奖人数不同.每个人只能中一次奖 4.可临时加场,现场输入奖品名.数量.额外窗口输入,避免被观众看到修改过程. 5.本地记录每轮的奖品和中奖名单 6.全屏显示.不确定现场的屏幕分辨率,故核心部分固定1024*768,居中显示:背景拉伸铺满全屏. 技术选型 搞桌面程序第一时间
-
使用 Python 写一个简易的抽奖程序
不知道有多少人是被这个头图骗进来的:) 事情的起因是这样的,上周有同学问小编,看着小编的示例代码敲代码,感觉自己也会写了,如果不看的话,七七八八可能也写的出来,但是一旦自己独立写一段程序,感觉到无从下手. 其实这个很正常,刚开始学习写代码,都是跟着别人的套路往下写,看的套路少,很难形成自己的套路,这就和做数学题是一样的,做一道题就想会所有的题目,这个可能性微乎其微,都是通过大量的练习来摸索到自己的套路. 正好快过年了,各个公司都会搞一些抽奖活动,小编今天就来聊一下,如果要写一个简单的抽奖程序,小
-
自定义vbs脚本实现开机后延时启动指定程序的方法
概述 系统开机时,顺带自动启动了不少驱动程序,使得电脑开机后鼠标要呆滞许久.为了加快windows的开机速度,在参考网上不少大牛的资料后,整理出使用vbs脚本实现开机后延时启动程序的方法 vbs内容示例: 复制代码 代码如下: Dim delayer Set delayer = CreateObject("WScript.Shell") WScript.sleep 8000 delayer.Run """C:\Program Files(x86)\King
-
asp.net中button控制先执行js再执行后台程序的方法
本文实例讲述了asp.net中button控制先执行js再执行后台程序的方法.分享给大家供大家参考.具体分析如下: 在.net中要实现button控制点击之后先执行js再执行后台程序这个看上去没什么难度,这里我们就一起来看一个asp.net中button控制先执行js再执行后台程序的实现方法,希望可以帮助到各位. 关于button这个服务器控件,我一直想减少它向服务器提交数据.那些检测,还是在客户端实现就好了. 这就需要javascript,但是我发现仅仅有javascript还是不够的.but
-
详解Java编写并运行spark应用程序的方法
我们首先提出这样一个简单的需求: 现在要分析某网站的访问日志信息,统计来自不同IP的用户访问的次数,从而通过Geo信息来获得来访用户所在国家地区分布状况.这里我拿我网站的日志记录行示例,如下所示: 121.205.198.92 - - [21/Feb/2014:00:00:07 +0800] "GET /archives/417.html HTTP/1.1" 200 11465 "http://shiyanjun.cn/archives/417.html/" &qu
随机推荐
- 超级硬盘杀手的bat
- springMVC4之强大类型转换器实例解析
- 详解Oracle在out参数中访问光标
- 给Flash加一个超链接(推荐使用透明层)兼容主流浏览器
- js实现的真正的iframe高度自适应(兼容IE,FF,Opera)
- ES6中的箭头函数实例详解
- .Net Core中使用ref和Span<T>提高程序性能的实现代码
- Yii2学习笔记之汉化yii设置表单的描述(属性标签attributeLabels)
- php将session放入memcached的设置方法
- 解析C++编程中的选择结构和switch语句的用法
- MySQL数据类型varchar详解
- node.js中Socket.IO的进阶使用技巧
- asp数字或者字符排序函数代码
- centos7 mariadb主从复制配置搭建详解步骤
- python实现的守护进程(Daemon)用法实例
- 图片Slider 带左右按钮的js示例
- JQuery选中checkbox方法代码实例(全选、反选、全不选)
- javascript实现拖动层效果代码(符合标准且兼容IE,chrome,firefox)
- 详解Java中Comparable和Comparator接口的区别
- 详解python的数字类型变量与其方法