怎样用MATLAB算随机数,不是用rand取的,rand取的都是固定的随机数,我要的是真正的随机数

如题所述

由计算机产生的随机数都是伪随机的,不可能产生真正的随机数,你说的问题可能是两次rand取到的随机数是相同的吧? 如果是这样的话,有一种方法就是人为设定rand函数的种子,详见:
http://wenku.baidu.com/view/6500290d4a7302768e9939f2.html
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-09-25
matlab生成的随机数很多,高斯,指数等等,可以在contents里面查找你需要的,随机数一般都是指的伪随机数,真正随机的作用也不大追问

不好意思,这不是我要的答案。

追答

那你继续找你的答案吧

第2个回答  2012-12-30
计算机生产的都是“伪随机数”, 网络上有提供一种服务,即将大气观测到的噪音数据作为随机数,它是“真正随机”的随机数。可以参考我的博文:

http://blog.macro2.org/2012-12/生成真正随机的随机数.html

当然,还有人用量子物理中观察到的量子状态作为随机数,不过现在好像还没有找到可以提供此服务的网站。

参考资料:http://blog.macro2.org/2012-12/生成真正随机的随机数.html

怎么利用matlab产生随机数?
1、首先需要知道matlab中生成随机数的函数是rand,可以在命令行窗口中输入“help rand”查看一下rand函数的用法,如下图所示。2、如果我们想生成一个4行6列的矩阵,输入rand(4,6),需要注意的是默认生成的随机数是在0-1之间,如下图所示。3、按回车键之后,可以看到生成了一个4行6列的矩阵。4、...

matlab怎么生成指定范围的随机数
方法一:通过rand()函数生成 第一步打开matlab命令行窗口,输入help rand,按回车键,可以看到关于rand()函数的用法介绍,生成随机数的函数,如下图所示:第二步我们输入round(rand(1,5)*10),按回车键就生成了5个0-10的随机整数,如下图所示:第三步输入round(rand(1,5)*3),按回车键就生成了...

如何用matlab生成随机数函数
一、第一步打开matlab命令行窗口,输入helprand,按回车键,可以看到关于rand()函数的用法介绍,生成随机数的函数,如下图所示:二、第二步我们输入round(rand(1,5)*10),按回车键就生成了5个0-10的随机整数,如下图所示:三、第三步输入round(rand(1,5)*3),按回车键就生成了5个0-3的随机...

怎样用matlab生成一个随机数?
1、首先打开电脑上的“matlab”软件,在命令行窗口输入一个向量n,向量n有4个元素。接着使用diag函数生成对角矩阵。2、diag(n,k)可以把向量放在第k条对角线上,k为正值,表示右上。k为负值,则表示左下。在命令行输入diag(n,2),即可把向量放在右上的第二条对角线上。3、在命令行输入diag(n,-...

如何在MATLAB中生成一组在规定范围符合指定分布的随机数
首先要确定需要的是什么分布的随机数,也就是要知道随机数要符合的概率密度分布函数f(x)的定义,然后求其积分函数F(x),然后求F(x)的反函数 得到反函数的定义之后,利用函数rand产生一系列(0,1)之间的随机数代入反函数中计算得到的结果数列就符合原来f(x)的分布。这种方法适用于,能够容易得到...

matlab在一定范围内生成随机数
rand([m n])产生 m行,n列(0,1)范围内均匀分布的伪随机数如果要求在区间(a,b)内产生均匀分布的随机数 r = a + (b-a).*rand([m n]));MATLAB 生成随机整数的方法:1,生成0-5之间的10个随机整数 在matlab主窗口中输入round(rand(1,10)*5) 回车 2,生成1个随机整数,,命令 ...

求助如何用matlab生成随机数
你的200行数组是分开的吗,在一个矩阵里就是a = 30*rand(200,20);不是的话这样:a =zero(1,20); for i=1:200a[i]= 30*rand(1,20);end

用matlab生成随机数
程序代码:a=rand(1,10)*0.5;b=rand(1,90)*0.5+0.5;c=[a b];hist(c)---运行生成直方图:

matlab怎么生成随机数,不是(0,1)的随机数?
MATLAB自带多种生成随机数的函数,包含rand、rng、randi和randn等。以下为具体使用方法与示例:1.rand函数用于生成0到1之间均匀分布的随机数。示例程序:rand(1,5)运行结果:返回一组长度为5的随机数。若需固定随机数序列,使用rng函数设置seed值。示例程序:rng(123); rand(1,5)运行结果:每次运行均...

matlab怎么生成0到1的随机数
rand(1, 5);```这将生成一个包含0到5之间的随机数的向量。注意,`rand()`函数会使用系统当前的日期和时间作为随机数种子,因此如果MATLAB的日期和时间设置不正确,生成的随机数可能会不准确。如果需要更高精度的随机数,可以使用`randn()`函数。例如,要生成0到1之间的随机数,并且每个数都大于0,...

相似回答