How to Save the outputs of my for loop?
    1 view (last 30 days)
  
       Show older comments
    
I have this code:
x=1:10;
for i=1:length(x);
    y=rand(i)
end
which is doing what I want to, but it's not saving the answers in my workspace, so I tried this:
x=1:10;
for i=1:length(x);
    y(i)=rand(i)
end 
 But that comes out with an error that says, "In an assignment  A(:) = B, the number of elements in A and B must be the same."
Thanks for the help..
0 Comments
Accepted Answer
  James Tursa
      
      
 on 19 Apr 2017
        
      Edited: James Tursa
      
      
 on 19 Apr 2017
  
      rand(i) is going to create a different sized matrix for each iteration, namely a square matrix of size i x i. That's why you are getting the error. If this is really what you want, then you can use cell arrays. E.g.,
y{i} = rand(i);
If you are just trying to generate a single random number for each iteration, then
y(i) = rand;
Or in the latter case you could just get rid of the loop entirely with:
y = rand(size(x));
More Answers (0)
See Also
Categories
				Find more on Loops and Conditional Statements in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!