急~~~求一个MATLAB循环语句表示这个矩阵200分

来源:百度知道 编辑:UC知道 时间:2024/05/18 05:31:28
A=[-3+3*i,-1+3*i,1+3*i,3+3*i;-3+i,-1+i,1+i,3+i;-3-i,-1-i,1-i,3-i;-3-3*i,-1-3*i,1-3*i,3-3*i]这个矩阵怎么用MATLAB的循环语句表示出来。
我的程序是
clear;
clc;
A=zeros(4,4);
i=1;j=1;
for i=1:4
for j=1:4
A(i)=-3+(j-1)*2;
A(j)=7-(i+1)*2;
A(i,j)=A(i)+A(j);
end
end
可是运行不出来 请高手指教谢谢。可追加分!

这样的,i和j是内部虚数变量,避免轻易使用。

clear;clc;
A=zeros(4,4);
for m=1:4
for n=1:4
A(m,n)=-3+(n-1)*2+(3-(m-1)*2)*i;
end
end
A

结果:
A =

-3.0000 + 3.0000i -1.0000 + 3.0000i 1.0000 + 3.0000i 3.0000 + 3.0000i
-3.0000 + 1.0000i -1.0000 + 1.0000i 1.0000 + 1.0000i 3.0000 + 1.0000i
-3.0000 - 1.0000i -1.0000 - 1.0000i 1.0000 - 1.0000i 3.0000 - 1.0000i
-3.0000 - 3.0000i -1.0000 - 3.0000i 1.0000 - 3.0000i 3.0000 - 3.0000i

可以这样写:

A=zeros(4,4);
B=A;
for a=1:4
for b=1:4
A(a,b)=-3+(b-1)*2;
B(a,b)=7-(a+1)*2;
end
end
A=A+B*i;

有一个问题要注意,你的其它变量一定不能有i,j,不然系统就不会将其作用复数单位,而是当作变量。