matlab rand函数

来源:互联网 发布:js 字符串替换 中文 编辑:程序博客网 时间:2024/06/05 17:00

作用:

产生均匀分布的随机数或矩阵


语法:
Y = rand(n):  返回一个n x n的随机矩阵。如果n不是数量,则返回错误信息。
Y = rand(m,n)    返回一个m x n的随机矩阵。
Y = rand([m n])  返回一个m x n的随机矩阵。
Y = rand(m,n,p,...)  产生随机数组。
Y = rand([m n p...])  产生随机数组。
Y = rand(size(A))  返回一个和A有相同尺寸的随机矩阵。


举例:

1、rand(3)*-2   rand(3)是一个3*3的随机矩阵(数值范围在0~1之间),然后就是每个数乘上-2

2、用matlab随机产生60个1到365之间的正数   1+fix(365*rand(1,60));

3、用rand函数随机取100个从-1到1的数:x1,x2,...,x = rand(1,100) * 2 - 1


C++中的rand();

与Matlab不同,C++中的rand()不需要参数,

它会返回一个从0~最大随机数的任意整数,最大随机数通常是一个固定的大整数。

比如:

如果你要产生0~10的10个整数,可以表达为: int N = rand()%11; 如果要产生1~10,则是这样: int N = 1+rand() % 10; 
但是在C++中,官方已经不推荐使用rand(),因为它是一个伪随机,效果不如random好。