matlab 用for 循环生成矩阵;举一个例子 for j=1:1:6; aj=j; end 我希望得到的结果是 a1=1 ,a2=2, a3=3

之类的 但是输出全部都是aj=1 aj=2 aj=3 之类的,应该怎么改改啊 求帮助
之后还有一部 就是对a1到a6 每一个数都求sin ,后来吧每一个sin值给B1到B6;基本上市在线等啊 大神们啊 帮帮我吧
我基本上的情况是,我手上有一组数据a1到a6,每一个数据我都要对他进行一次计算,加入是sin,后得到b1到b6,后来吧
b1到b6乘起来

大神门啊 您写的程序先用matlab跑一下@@

第1个回答  2011-05-10
a和b用数组表示。

for j=1:1:6;
a(j)=j;
end
b=sin(a);
BB=1;
for j=1:length(b);
BB=BB*b(j);
end

%b和a都是1*6的数组,a(1)表示你说的a1,b(1)表示你说的b1,BB就为b1到b6的乘积啊。。
b=sin(a)一条命令就把你要的a1到a6的sin算出来了。楼上是对的追问

我描述的有问题,a1是a1不是a那个1*6数组的第一个
qq求教

第2个回答  2011-05-10
for j = 1:1:6
a(j) = j;
end

B = sin(a);

或者
a = 1:1:6;
B = sin(a);%这样也满足你的要求!追问

不对啊 a(j)=j
输出是a=1
a=12



a=123456
另外我是举一个例子,吧a1到a6的sin值分别给b1到b6,实际运算比较复杂
例子中我希望得到的是:
B1=sin(a1)
B2=sin(a2)这样的

追答

for j = 1:1:6
a(j,1) = j
end

B = sin(a)

相似回答