Why does the Index exceeds the number of array elements
    6 views (last 30 days)
  
       Show older comments
    
    Wilfredo Huaman
 on 14 Jun 2019
  
    
    
    
    
    Commented: Wilfredo Huaman
 on 14 Jun 2019
            Im trying to run through total Force which is a 921x1 Double and check if the next value in that array is larger or greater if larger i want to subtract 0.01 from c and if smaller I want to add 0.01 to c and c starts at zero. Why does it exceed the index? Any Help would be greatly Appreciated Thanks!
for j = 1:length(TotalForce) 
    if j <= length(TotalForce)
        if TotalForce(j) >= TotalForce(j+1)
        c = c + 0.01 ;
        elseif TotalForce(j) <= TotalForce(j+1)  
        c = c - 0.01 ; 
        end 
    end
end
0 Comments
Accepted Answer
  Geoff Hayes
      
      
 on 14 Jun 2019
        Wilfredo - take a look at these lines
for j = 1:length(TotalForce) 
    if j <= length(TotalForce)
        if TotalForce(j) >= TotalForce(j+1)
If j happens to be the length of the TotalForce array, then j+1 will be an invalid index into your array. Try doing something like
for j = 1:length(TotalForce)-1
    if TotalForce(j) >= TotalForce(j+1)
        c = c + 0.01 ;
    else
        c = c - 0.01 ; 
    end 
end
More Answers (0)
See Also
Categories
				Find more on Matrix Indexing 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!
