从数组中取出同样长度n的数组进行点乘,怎么把结果存入一个数组中呢?
代码:n=2;
for j=0:(10-n)
for i=0:n
x=b(1:n);
c=b((j+1):(j+n));
end
sum_(j)=sum(x.*c)
end
=max(sum_)
结果错误:
Error in ==> sample_file at 22
sum_(j)=sum(x.*c)
[ 本帖最后由 无水1324 于 2007-11-6 19:38 编辑 ] 楼主不要把MATLAB当C来用,建议多读读基础书,尤其是MATLAB矢量编程。此外,多看看本版的精华帖子。你那个i到底有什么用?建议楼主最好举例说一下你到底想实现什么功能?你这个程序完全可以矢量化的。
回复 #2 rocwoods 的帖子
我要实现的功能从f=中取出x=
c=
c=
c=
…
c=
m=c.*x
m=c.*x
…
m=c.*x
从数组F中取出一组数x,移位相乘。。然后放入数组m中。 是不是两个空矩阵不让点乘? 这个直接用冒号运算符就可以做出来了 已经做出来了。。非常谢谢那么多热心的朋友!
n=2;k=1;
for j=0:(length(f)-n)
x=b(1:n);
c=b((j+1):(j+n));
res(k)=sum(x.*c);
k=k+1;
end
页:
[1]