伪随机数帮忙用C写个伪随机数产生

伪随机数  时间:2021-07-04  阅读:()

如何产生离散型的伪随机数或者说已知一个离散量的分布函数,求它的伪随机数~!

最简单的办法就是转化成均匀分布,概率高的数可以扩大他的分布范围,比如8的产生概率是0.2,我们最小的概率分布假设是1,几率是0.01,那方法就是通过C语言获得均匀分布的随机数,只有1个随机数代表1,有20个随机数代表8,那就是实现均匀分布了。







其实伪随机数的算法很复杂的,你要是抛开C语言提供的rand,自己写函数没学过的人也不会写啊,他是需要用随机数种子,和已经随机出现过的所有数进行运算,挺发杂的,我是不会。









写一个产生伪随机数的函数。C语言

//rand01.c #include static unsigned int RAND_SEED; unsigned int random(void) { RAND_SEED=(RAND_SEED*123+59)%65536; return(RAND_SEED); } void random_start(void) { int temp[2]; movedata(0x0040,0x006c,FP_SEG(temp),FP_OFF(temp),4); RAND_SEED=temp[0]; } main() { unsigned int i,n; random_start(); for(i=0;i<10;i++) printf("%u ",random()); printf(" "); }

帮忙用C写个伪随机数产生

C语言: #include <stdio.h> #include <time.h> #include <stdlib.h> int main() { // srand( time( 0 ) ); int seed; printf( "请输入你的种子: " ); scanf( "%d", &seed ); srand( seed ); printf( "生成的4个0~30之间的随机数是: %d %d %d %d ", rand()%31, rand()%31, rand()%31, rand()%31 ) ; } VB: Private Sub Command1_Click() Dim str As String Dim seed As Integer seed = CInt(InputBox("请输入种子:")) Randomize seed For i = 1 To 4 str = str & Int(Rnd() * 31) & " " Next MsgBox "生成的4个0~30之间的随机数是: " & str End Sub C里面用srand自设种子,vb里给randomize带上参数就是种子 每次只可以设置一个,如果你要对每个产生的数都设置不同的种子,可以在每次生成数之前进行设置

WebHorizon($10.56/年)256MB/5G SSD/200GB/日本VPS

WebHorizon是一家去年成立的国外VPS主机商,印度注册,提供虚拟主机和VPS产品,其中VPS包括OpenVZ和KVM架构,有独立IP也有共享IP,数据中心包括美国、波兰、日本、新加坡等(共享IP主机可选机房更多)。目前商家对日本VPS提供一个8折优惠码,优惠后最低款OpenVZ套餐年付10.56美元起。OpenVZCPU:1core内存:256MB硬盘:5G NVMe流量:200GB/1G...

pacificrack:VPS降价,SSD价格下降

之前几个月由于CHIA挖矿导致全球固态硬盘的价格疯涨,如今硬盘挖矿基本上已死,硬盘的价格基本上恢复到常规价位,所以,pacificrack决定对全系Cloud server进行价格调整,降幅较大,“如果您是老用户,请通过续费管理或升级套餐,获取同步到最新的定价”。官方网站:https://pacificrack.com支持PayPal、支付宝等方式付款VPS特征:基于KVM虚拟,纯SSD raid...

Hosteons - 限时洛杉矶/达拉斯/纽约 免费升级至10G带宽 低至年$21

Hosteons,一家海外主机商成立于2018年,在之前还没有介绍和接触这个主机商,今天是有在LEB上看到有官方发送的活动主要是针对LEB的用户提供的洛杉矶、达拉斯和纽约三个机房的方案,最低年付21美元,其特点主要在于可以从1G带宽升级至10G,而且是免费的,是不是很吸引人?本来这次活动是仅仅在LEB留言提交账单ID才可以,这个感觉有点麻烦。不过看到老龚同学有拿到识别优惠码,于是就一并来分享给有需...

伪随机数为你推荐
元数据管理四大管理是什么溢出隐藏overflow:hidden用在哪里?tvosTVOS系统是什么?jdk6我是win7的系统,安装了JDK6,环境配置都正确了。但是安装完没有应用程序啊~调度系统1.说明高级调度、中级调度和低级调度的基本含义。radius认证如何写一个C#的Radius认证客户端新手怎么制作表格怎么制作表格?菜霸为什么现在都在说生意难做?菜霸电视剧《你是我的生命》演员表中科红旗北京中科红旗软件技术有限公司的介绍
北京虚拟主机 俄罗斯vps 代理域名备案 photonvps 2014年感恩节 日志分析软件 iis安装教程 云图标 京东商城0元抢购 合租空间 新家坡 cn3 cdn加速是什么 最好的qq空间 绍兴电信 银盘服务 web服务器搭建 万网空间管理 备案空间 免费ftp 更多