MATLAB: Need help with this Matlab script question? For loop!!

for loopnumel error

I keep getting this error 'Attempted to access x(3); index out of bounds because numel(x)=2.' It's really frustrating!!!

Best Answer

You have to define x(3) as well (It should be 2 right ?), and then run the loop from x=3 and change the order of statements inside the while loop, because you set x(k) and then increment k. so for the new incremented k, x(k) will not be defined yet.
Please check:
%%Determining the golden ratio in a fibonacci sequence clear,clc % Defining the first two elements in the sequence x(1) = 1;
x(2) = 1;
x(3) = 2;
k = 3;
while (abs(x(k)./x(k-1) - x(k-1)./x(k-2))>0.001)
k = k+1;
x(k) = x(k-1) + x(k-2);
end