请问Matlab中如何产生一个介于-1到1之间的随机数?谢谢了

 我来答
mason_heu
推荐于2017-09-19 · 知道合伙人教育行家
mason_heu
知道合伙人教育行家
采纳数:1012 获赞数:17325
毕业于哈尔滨工程大学控制理论与控制工程专业,博士学位。现任 东北石油大学电气信息工程学院教师。

向TA提问 私信TA
展开全部
r = randi([iMin,iMax],m,n)在开区间(iMin,iMax)生成mXn型随机矩阵

matlab中生成随机数主要有三个函数:rand, randn,randi
1,rand 生成均匀分布的伪随机数。分布在(0~1)之间
主要语法:rand(m,n)生成m行n列的均匀分布的伪随机数
rand(m,n,'double')生成指定精度的均匀分布的伪随机数,参数还可以是'single'
rand(RandStream,m,n)利用指定的RandStream(我理解为随机种子)生成伪随机数
2,randn 生成标准正态分布的伪随机数(均值为0,方差为1)
主要语法:和上面一样
3, randi 生成均匀分布的伪随机整数
主要语法:randi(iMax)在开区间(0,iMax)生成均匀分布的伪随机整数
randi(iMax,m,n)在开区间(0,iMax)生成mXn型随机矩阵
r = randi([iMin,iMax],m,n)在开区间(iMin,iMax)生成mXn型随机矩阵
ruifengcao
2011-02-26 · TA获得超过9491个赞
知道大有可为答主
回答量:3579
采纳率:33%
帮助的人:2082万
展开全部
2*rand-1
rand函数产生的是0到1之间的数

祝你学习愉快!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友39533e909
2011-02-26 · TA获得超过1584个赞
知道小有建树答主
回答量:195
采纳率:0%
帮助的人:148万
展开全部
a=-1;b=1;
r = a + (b-a).*rand(n,1)%其中n为你要产生数的个数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
a999qwe
2011-02-26 · TA获得超过1107个赞
知道小有建树答主
回答量:419
采纳率:0%
帮助的人:329万
展开全部
randdata =2* rand(1,1)-1
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式