今天,我学习的内容是利用MATLAB生成斐波那契数。
先来介绍一下:斐波那契数列最初是用来解决兔子问题的,问题如下:
一个人把一对兔子放在一个四面被墙包围的地方。假设每对兔子每个月都生一对新兔子(不 考虑伦理问题),那么一年可以从这对兔子中生产多少对兔子。
斐波那契数列组成就是前两项都为1,从第三项开始(包括第三项)之后对应项的值为前两项之和,例如:1 1 2 3 5 8 13 21 34 55 89 144... 该项数列是计算了12项,当然,还可以继续往后面计算。
现在开始讲解如何运用MATLAB来创建斐波那契数列:
首先,创建一个函数文件,命名为’fib.m’的m文件,然后把输出数和输入数随便设个字母(我这里输出是A,输入是n),定义第一个数A(1)和第二个数A(2)为1,最后利用for循环遍历,从第三项开始,后面项数的值为前两项的和。值得注意的是,创建的是函数文件,最后不要直接点运行,保存文件直接在命令行窗口调用函数即可。
代码如下:
function A=fib(n)
A(1)=1;
A(2)=1;
for i =3:n
A(i)=A(i-1)+A(i-2);
end
A;
结果如下:
如果只是想单独显示对应项的值,可以将代码最后进行修改:
function A=fib(n)
A(1)=1;
A(2)=1;
for i =3:n
A(i)=A(i-1)+A(i-2);
end
A=A(end);
接下来介绍第二种方法:
第一种我们是运用了for循环完成任务的,现在我们利用条件函数if,else来完成这个任务,具体操作请看源码:
function A = fibnum(n)
if n<= 1
A=1;
else
A=fib(n-1)+fib(n-2);
end
好了,今天的学习任务完成,希望自己继续保持创作热情,让自己真正的学到东西,每天都能有一分收获,继续努力,时间终会给出答案!