rand(7) 到rand(10)

说有一个rand()函数,等概率生成1-7的随机数.

利用这个函数,构造一个能生成1-10的随机数的函数;      //意思大家都懂就好,没说清的就按照想象的走

我想只要输出的10个数概率相同就好,从宏观上看,这个函数的返回值每个都是1/10就好.




int get10()
{
srand((int)time(0));
int a,b,c=0;
while(1)
{
a=rand();        //这个rand() 生成1-7
b=rand();
if(a==1)
{
switch(b)
{
case 1:c=1;break;
case 2:c=2;break;
case 3:c=3;break;
case 4:c=4;break;
case 5:c=5;break;
}
if(c!=0)break;
}
if(a==2)
{
switch(b)
{
case 1:c=6;break;
case 2:c=7;break;
case 3:c=8;break;
case 4:c=9;break;
case 5:c=10;break;
}
if(c!=0)break;
}
}
return c;
}

rand(7) 到rand(10),布布扣,bubuko.com

时间: 05-26

rand(7) 到rand(10)的相关文章

rand(),ceiling(),floor(),rand(),cast()

一.rand() 在查询分析器中执行:select rand(),可以看到结果会是类似于这样的随机小数:0.36361513486289558 rand() 生成一个随机数 二.ceiling(),floor() 1. A:select floor(rand()*N) ---生成的数是这样的:12.0 B:select cast( floor(rand()*N) as int) ---生成的数是这样的:12 2. A:select ceiling(rand() * N) ---生成的数是这样的:

PHP利用rand(1,100)函数产生10个1~100之间的随机数

//echo rand(1,100); $max=0; $min=100; for($i=0;$i<=9;$i++){ $rand[$i]=rand(1,100); if($rand[$i]>$max){ $max=$rand[$i]; } if($rand[$i]<$min){ $min=$rand[$i]; } $str.=$rand[$i].","; } //去除最后一个逗号 $str.="quchu"; $str=str_replace(&

PHP程序实现利用rand(1,100)函数产生10个1~100之间的随机数

//echo rand(1,100);$max=0;$min=100;for($i=0;$i<=9;$i++){ $rand[$i]=rand(1,100); if($rand[$i]>$max){ $max=$rand[$i]; } if($rand[$i]<$min){ $min=$rand[$i]; } $str.=$rand[$i].",";}//去除最后一个逗号$str.="quchu";$str=str_replace(",q

有关rand(),srand()产生随机数学习总结

看到夏雪冬日的有关rand()和srand()产生随机数的总结,挺好的,学习了,然后又有百度其他人的成果,系统总结一下.本文转自夏雪冬日:http://www.cnblogs.com/heyonggang/archive/2012/12/12/2814271.html,Peng Lv:http://www.cnblogs.com/lvpengms/archive/2010/02/03/1663066.html#commentform. 要计算机产生一个随机数不像扔色子一样,计算机的每一步操作,就

openssl rand 指令解析

1. rand 查看man帮助文档 #man sslrand RAND(1)                             OpenSSL                  RAND(1)用户指令 NAME rand - generate pseudo-random bytes 生成'伪随机数'字节 SYNOPSIS openssl rand [-out file] [-rand file(s)] [-base64] [-hex] num DESCRIPTION The rand co

关于rand()函数 转载于其他人

C++中的rand()函数 分类: 编程语言/ C#/ 文章 C++中产生随机数种子对于初学者一直都很困惑.大家知道,在C中有专门的srand(N)函数可以轻松实现这一功能,然而在C++中则要复杂一些.下面是笔者学习的一点心得,希望对大家能有所帮助.(这里我们依然要借助C标准库中的rand()函数) 函数说明: int rand();                                          :返回从[0,MAX)之间的随机整数,这里的MAX与你所定义的数据类型而定:需#

C++中rand()函数的用法

C++中rand()函数的用法   2011-12-30 11:03:59|  分类: C / C++|举报|字号 订阅 一.C++中不能使用random()函数 random函数不是ANSI C标准,不能在gcc,vc等编译器下编译通过.但在C语言中int random(num)可以这样使用,它返回的是0至num-1的一个随机数. 可改用C++下的rand函数来实现. 1.C++标准函数库提供一随机数生成器rand,返回0-RAND_MAX之间均匀分布的伪随机整数. RAND_MAX必须至少为

rand随机数生成函数

#include<iostream> #include<cstdlib> #include<algorithm> #include<ctime> #include<vector> using namespace std; /*第一个函数是vector的引用,不用每次复制:而第二个函数每次都要对vector复制,第一个更优*/ void fill_random_int(vector<int> &v,int cnt) { v.cl

C++中随机函数rand()和srand()的用法

一.rand() 函数名:   rand 功   能:   随机数发生器 用   法:   int rand(void); 所在头文件: stdlib.h 函数说明 : rand()的内部实现是用线性同余法做的,它不是真的随机数,因其周期特别长,故在一定 的范围里可看成是随机的. rand()返回一随机数值的范围在0至RAND_MAX 间.RAND_MAX的范围最少是在32767之间(int).用 unsigned int 双字节是65535,四字节是4294967295的整数范围.0~RAND