How to define both integer and decimal increment in one for loop?
    12 views (last 30 days)
  
       Show older comments
    
Hi all,
I would like to define one for loop that goes from 0 to 1 with an increment of 0.1 and then goes from 1 to 30 by an increment of 2, i.e., combination of the following two loops. Is it possible? If so, how?
for n = 1:2:30
   f(round((n-1)/2+1)) = ....
end
  z = 0: 0.1: 1; 
 for n = 1: length(z)
    f(n) = ..
 end
Thanks in advance
0 Comments
Accepted Answer
  Image Analyst
      
      
 on 23 Jun 2021
        Try this:
allValues = [0:0.1:1, 3:2:30];
numValues = length(allValues)
% Preallocate some results we want to store in the loop.
results = zeros(1, numValues);
% Now loop over all values.
for k = 1 : numValues
	thisValue = allValues(k);
	fprintf('Processing element #%d of %d, which is %f.\n', ...
		k, numValues, thisValue);
% 	results(k) = YourFunction(thisValue);
end
More Answers (1)
  millercommamatt
      
 on 23 Jun 2021
        I'm not clear on what you're looking for. Do you want something like this:
span1 = 0:0.1:1;
span2 = 3:2:30;
span = [span1 span2];
for ii = span
   % do something with ii...
end
7 Comments
  Steven Lord
    
      
 on 24 Jun 2021
				@Matthew I suspect Image Analyst was replying to Susan's message not yours. The comment "do something with ii..." suggests to me (and I suspect to Image Analyst as well) that Susan wanted output(ii).
  Image Analyst
      
      
 on 24 Jun 2021
				I was responding to Susan and just said No, then I went to MATLAB to develop code that works.  Then I came back here to further explain why it wouldn't work and edited my comment but then I didn't notice miller's comment since it was posted while I was working on the code in MATLAB, and I mistakenly copied the loop from miller's comment instead of Susan's (not noticing that millers was a new comment).  Sorry for the misunderstanding, that sometimes happens when people are posting at the same time.  miller's code snippet #2 will also work for Susan.
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!