Report r_n and n when |r_n − r_n−1|< 10−9 (while-loop).
1 次查看(过去 30 天)
显示 更早的评论
I was asked to create a while loop for Fibonacci sequence
with initial values: Fn= Fn−1 + Fn−2,
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 个评论
回答(1 个)
Dyuman Joshi
2023-1-20
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
n
rn=r(end)
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!