Report r_n and n when |r_n − r_n−1|< 10−9 (while-loop).

1 vue (au cours des 30 derniers jours)
LILIA VERGARA
LILIA VERGARA le 20 Jan 2023
I was asked to create a while loop for Fibonacci sequence
with initial values: Fn= Fn1 + Fn2,
F0 = 2 and F1 = 3
note r_n= Fn+1/Fn
It wants me to report r_n and n when |rn−rn−1|< 10−9 (while-loop)
Code created:
fib_first = 2;
fib_second = 3;
fib_all = zeros(n, 1);
fib_all(2) = fib_first;
fib_all(3) = fib_second;
n=1:100
fib_all(ii) = fib_all(ii-1)+fib_all(ii-2)
while abs(r_n - r_n-1) < 10^-9
end
I am having a hard time understanding what I am doing wrong. I do not feel confident with this code.
  2 commentaires
Dyuman Joshi
Dyuman Joshi le 20 Jan 2023
Is r(n)
%1
F(n+1)/F(n)
%2
(F(n)+1)/F(n)
%3
F(n)+(1/F(n))
LILIA VERGARA
LILIA VERGARA le 20 Jan 2023
Hi- r(n) is %1

Connectez-vous pour commenter.

Réponses (1)

Dyuman Joshi
Dyuman Joshi le 20 Jan 2023
You have to update the values inside the while loop. One way to do is
F=[2 3 5];
%defining rn = F(n+1)/F(n)
r=F(2:3)./F(1:2);
n=2;
while abs(diff(r))>=1e-9
F=[F(2:3) F(2)+F(3)];
r=F(2:3)./F(1:2);
n=n+1;
end
F
F = 1×3
28657 46368 75025
n
n = 22
rn=r(end)
rn = 1.6180

Catégories

En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by