how will use nested loop

hello my problem is that i have 11 value for any variable suppose i=1:11 and have another variable suppose b=2:12 also has 11 values now my question is that i want to find out value for i=1 for z=i*b total 11 values and for i=2 another 11 value of z and so on how i can use nested loop

3 Comments

Image Analyst
Image Analyst on 18 Dec 2012
Edited: Image Analyst on 18 Dec 2012
It's not clear what you want. Please give an example with 2 11-element arrays, a and b, and what output(s) you want.
for i=1 I want 11 values of i*b in one row for i=2 I want 11 values of i*b in one row for i=3 I want 11 values of i*b in one row AND SO ON..............
Yes, and all of the Answers so far give you that.

Sign in to comment.

 Accepted Answer

try this:
z = zeros(11,11);
for a=1:11
for b=2:12
z(a,b)=a*b;
end
end
z(:,1)=[];

2 Comments

You declare z as 11 x 11, but then you use it as 11 x 12.
Because of the way MATLAB handles assignments to non-existant locations, this will work, but it does indicate a logic fault on your part.
@walter..I agre your point..

Sign in to comment.

More Answers (3)

Babak
Babak on 18 Dec 2012
Z = zeors(11,11);
for i=1:11
for b=2:12
z=i*b;
end
end

4 Comments

You would need to change the assignment to be
z(i,b-1) = i * b;
thanks this shows right answer
sir now if my varible i=0.1:.11 and b also in point then how it will save
If the number you're multiplying by is a fractional number, like 0.1 or 0.11 then you'll have to separate your index from your number, like I think you originally had in your message where you had a and b instead of i and b. You could just make the loop index from 1 to 11 and then create the array index from it like arrayIndex = i / 10 and then use arrayIndex in z() or wherever.

Sign in to comment.

Code golf:
z=i'*b

1 Comment

Provided "i" is not complex, which it normally is ;-)

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!