matlab两个问题
<p>1。哪位朋友帮我看看下面这个用来把实数虚数分开的代码哪里错了。</p><p>A=;<br/>r=[];<br/>c=[];<br/>for i=1:length(A),<br/> if isreal(A(i))==1,<br/> r=;<br/> else<br/> c=;<br/> end;<br/>end<br/>u<br/>v</p><p>2。请问一下到底==和=分别什么时候用?</p> <p>看看我的代码你就知道你哪里错了:</p><p>A=;<br/>r=[];<br/>c=[];<br/>for k=1:length(A);<br/> if isreal(A(1,k))==1;<br/> r=A(1,k)<br/> else<br/> c=A(1,k)<br/> end<br/>end</p><p>i在matlab系统里默认是表示虚数单位,不能乱用!</p><p>A(m,n)表示矩阵A的第m行n列的元素。</p><p>==和=的区别是:==用于表示关系运算,=用来赋值。在判断逻辑关系式时,只能用==,而数值运算中用=</p> <p>或许你嫌上面的程序太烦,输出不是很好看,那就再试试下面的程序,你就满意了:</p><p>A=;<br/>r=[];<br/>c=[];<br/>i2=1;<br/>i3=1;<br/>for k=1:length(A);<br/> if isreal(A(1,k))==1;<br/> r(1,i2)=A(1,k);<br/> i2=i2+1; <br/> else<br/> c(1,i3)=A(1,k);<br/> i3=i3+1;<br/> end<br/>end<br/>r,c</p> <p>可能你不满足只能判断一个特定的数组里的实数与虚数,那么把附件里的M文件放到你matlab的work文件夹下,那么你就能调用分离数组里实数与虚数的函数了。</p><p>调用格式为:sxpd(x)</p><p>比如你想要分离数组a=里的实数与虚数</p><p>那么只需输入如下程序:</p><p>a=;</p><p>sxpd(a)</p><p></p><p>系统自动帮你分离实数虚数,手到擒来!呵呵,enjoy it!</p><br/>[此贴子已经被作者于2008-2-17 22:37:05编辑过] 多谢版主!以后多多指教啊~ <p>那个sxpd可以处理不是一维的情况么?</p> 原来是这样. 原来是这样. 6# lzh0601 可以的,这是我自己编写的函数,可以分离矩阵
页:
[1]