用matlab做fibonacci数列

2025-02-24 20:37:55
推荐回答(3个)
回答1:

clc,clear
a(1)=1;
a(2)=1;
n=input('n=');
k=2;
while a(k)<=n

a(k+1)=a(k)+a(k-1);
k=k+1;
end
k
fib=[1:length(a);a]'
---------a test -------------------
n=1000

k =

17

fib =

1 1
2 1
3 2
4 3
5 5
6 8
7 13
8 21
9 34
10 55
11 89
12 144
13 233
14 377
15 610
16 987
17 1597

回答2:

n=100;
a=[1,1];
i=2;
while a(i) a(i+1)=a(i-1)+a(i);
i=i+1;
end

i%第几个超过n
a(end) %超过n的那个fibonacci数列是多少
a

回答3:

clc,clear
a(1)=1;
a(2)=1;
n=input('n=');
k=2;
while
a(k)<=n
a(k+1)=a(k)+a(k-1);
k=k+1;
end
k
fib=[1:length(a);a]'
---------a
test
-------------------
n=1000
k
=
17
fib
=
1
1
2
1
3
2
4
3
5
5
6
8
7
13
8
21
9
34
10
55
11
89
12
144
13
233
14
377
15
610
16
987
17
1597