inserting index for variable
显示 更早的评论
Hi everyone!
I want make index for my variable. I write a simple code:
x=8;
b=9;
for i=1:2
w(i)=x+b
u=x+w(i)
end
I expect something like this:
w(1)=17
u(1)=8
w(2)=17
u(2)=25
but code doesnt do this.
Since I've just started programming with MATLAB. Im not familiar with this syntax.
I appreciate any help.
1 个评论
Dear Shirin,
in your code, the variable u is not a vector. Try this:
x=8;
b=9;
for i=1:2
w(i)=x+b
u(i)=x+w(i)
end
However, notice that in this way your vector will be increasing; this is a bad practice from the point of view of computational efficiency.
Most importantly, there is strictly no reason for you to obtain the result you posted beause w(i) = x+b = 17 for any index i, hence u(i) = x+w(i) = 2x+b = 25 is constant as well (no matter if u is a vector or a scalar). Are you sure of your algorithm?
回答(1 个)
I don't know what you mean by "I want make index for my variable", but
x = 8;
b = 9;
w = zeros(2,1);
u = zeros(2,1);
for i = 1:2
u(i) = x + w(i);
w(i) = x + b;
end
at least reproduces your expected output.
类别
在 帮助中心 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!