![]() |
[求助]matlab编程
写一个MATLAB的递归函数fibo.m来计算fibo数列,定义如下:
fibo(n+2)=fibo(n+1)+fibo(n) 此数列的初条件为 fibo(1)=0, fibo(2 )=1 n的最大数为100,要求: (1)保存你的fibo.m文件,当在命令窗调用fibo函数时,不论输入任何整数有正确的输出。 (2)做出fibo的二维离散函数图,n取1到10,图的函数值处用小圆圈并涂为黑色,请保存你的图形。 (3)用三次样条插值的方法对(2)中的10个点进行插值,自变量的分辨率为0.01, 请保存你的图形。 (4) 编写一个程序,不论输入任何具有两位小数且小于10大于0的数时有正确的输出。 第一问: function [a]=fibo(n); if n==1 a=0; else if n==2 a=1; end fibo(1)=0; fibo(2)=1; for i=3:n if n<=100 fibo(i)=fibo(i-1)+fibo(i-2); end end a=fibo; end 第二问: for i=1:10; n=1:i; stem(n,fibo(i),'ko') end 第三问: xx=1:.01:10; yy=spline(1:10,fibo(10),xx); hold on; plot(xx,yy) 请问第四问该怎么做?应该是很简单,但我就是做不出来。:cry: |
所有时间均为北京时间。现在的时间是 11:09。 |
Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.