# Invalid index showing Index exceeds the number of array elements. Index must not exceed 1.

18 views (last 30 days)
shiv gaur on 6 Mar 2022
Commented: Jan on 12 Mar 2022
a(1)=1;
b(1)=1;
c(1)=1;
S=0;
Z=0;
for i=1:20
for p=1:i-1
a(i+1)=(1/(i+1))*(a(i)-b(i));
S=S+a(p)*c(i-p);
b(i+1)=(1/(i+1))*(a(i)-S-b(i));
Z=Z+a(p)*b(i-p);
c(i+1)=(1/(i+1))*(Z-c(i));
disp([S Z])
end
end
Index exceeds the number of array elements. Index must not exceed 1.
display is showing
Jan on 12 Mar 2022

Torsten on 6 Mar 2022
For i=1, the p-loop is empty since your loop index goes from p=1:i-1.
Thus for i=1, a(i+1) = a(2), b(i+1) = b(2) and c(i+1) = c(2) will not be defined.
But for i=2, you refer to a(2), b(2) and c(2) in the p-loop in the expressions for a(3), b(3) and c(3). This causes the error.
shiv gaur on 6 Mar 2022
the p loop for calculating the value of s and z ie
s=s+sum(a(p)*c(i-p));z=s+sum(a(p)*b(i-p))
first how to calculate the z s form this because this is complexity of s z

R2021b

### Community Treasure Hunt

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

Start Hunting!