Index exceeds the number of array elements in while loop
Mostra commenti meno recenti
I ve been trying to create a Fibonacci Sequence in which ratio of the adjacent values converge to 0.001. Here is the code I've written so far:
clc
clear
x = input('Please enter the first number in the series:');
y = input('Please enter the second number in the series:');
s(1) = x;
s(2) = y;
k = 3;
while abs(s(k)./s(k-1) - s(k-1)./s(k-2))>0.001
s(k) = s(k-1) + s(k-2)
k = k+1;
end
disp(s)
But when I run the code, it says; Index exceeds the number of array elements (2)
Error is on the eighth line.
3 Commenti
Kevin Phung
il 25 Mar 2019
there is an error because you have not defined what s(3) is.
Kaan Uçar
il 25 Mar 2019
Kevin Phung
il 25 Mar 2019
Modificato: Kevin Phung
il 25 Mar 2019
ok, and where is that in your code? What is see is that you've set s(1) and s(2) to be the user input.
Youve made k a constant 3, and your while loop CONDITION:
while abs(s(k)./s(k-1) - s(k-1)./s(k-2))>0.001
starts with s(k) which is s(3), and that does not exist.
Risposta accettata
Più risposte (0)
Categorie
Scopri di più su Loops and Conditional Statements in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!