一个matlab语句分析a=-1+2*round(rand(M,1)).'+i*(-1+2*round(rand(M,1

一个matlab语句分析
a=-1+2*round(rand(M,1)).'+i*(-1+2*round(rand(M,1))).'
这个语句作用是产生复数向量.疑问:
① rand(M,1)产生了一个M行一列的矩阵,这个矩阵中所有的数是不是都是0~1之间的?我试了几次,都是这样
② round将0~1中所有数都变成了1.这样的话,这个向量岂不就是1+i了?
温州05 1年前 已收到1个回答 举报

chensong5879 春芽

共回答了15个问题采纳率:86.7% 举报

1.rand(M,1)产生了一个M行一列的矩阵,这个矩阵中所有肯定都是0~1之间的,因为
RAND(N) is an N-by-N matrix with random entries,chosen from
a uniform distribution on the interval (0.0,1.0).
2.round 函数说白了就是四舍五入.rand函数随机产生0~1之间的数,经过round函数处理后,
大于0.5 的四舍五入成1.0了,小于0.5 的就变成了0.
也就是说上面的语句产生的复数向量中的复数只有四种可能:-1-i ,-1+i ,1-i,1+i

1年前

5
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 16 q. 1.465 s. - webmaster@yulucn.com