当前位置:编程学习 > Matlab >>

一个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了?
答案: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

上一个:高手帮忙修改一下这个Matlab程序
下一个:matlab 二维绘图 谁能教我用MATLAB画图,谢谢 部分数据如下

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,