MATLAB Answers


I face the error of "Index exceeds matrix dimensions". but i want to show all the elements of z(n) and want to sum them and mean them. my program is given below, plz help me out?

Asked by Mehedi
on 4 Jun 2014
Latest activity Answered by Roger Wohlwend on 4 Jun 2014

clc clear x1=5; x2=3; x3=2; p=cell(3,1); for i=1:3 if i==1 x1=6; elseif i==2 x1=7; elseif i==3 x1=8; end p{i}=[x1-x2; x1-x3]; if p{i}==[4;5] break end end for n=1:3 z(n)=(p{n} (1)) end


Log in to comment.



No products are associated with this question.

1 Answer

Answer by Roger Wohlwend on 4 Jun 2014

In the second iteration the if-condition p{i} == [4;5] becomes true and terminates the loop. p{3} stays empty. In the second for-loop you want to acces that empty field --> p{3}(1). Matlab does not allow it and throws an error.

Hint: instead of

p{i} == [4; 5]


isequal(p{i}, [4;5])


all (p{i} == [4;5])

And if you post code the next time, please format it as code.


Log in to comment.

Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

MATLAB Academy

New to MATLAB?

Learn MATLAB today!