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?

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

回答 (1 件)

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]
write
isequal(p{i}, [4;5])
or
all (p{i} == [4;5])
And if you post code the next time, please format it as code.

この質問は閉じられています。

タグ

質問済み:

2014 年 6 月 4 日

閉鎖済み:

2021 年 8 月 20 日

Community Treasure Hunt

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

Start Hunting!

Translated by