急!matlab怎么算如下递归问题!!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了急!matlab怎么算如下递归问题!!相关的知识,希望对你有一定的参考价值。

其中x=6.5555,y=1.3778 如果大神还能画出g(n)关于n的图像,小弟再多加悬赏!感激不尽!

x=6.5555;y=1.3778;
L=100;%设置n的最大值。
n=1:L;%n取1到L。


f=1/x*(1-1/y).^(n-1);%计算f(n)的所有值。

g=f(1)*ones(1,100);%生成g(n)初始数组,g(1)=f(1)。


for i=2:L
g(i)=(1-sum(g(1:(i-1)))).*f(i);
end


plot(g);
xlabel('n'),ylabel('g(n)');

 

参考技术A ns = (1:100).';
x=6.5555;
y=1.3778;
fs = 1/x * (1-1/y).^(ns-1) ;
gs = fs;
for k = 2:length(gs)
    gs(k) = (1-sum(gs(1:k-1)))*fs(k);
end
plot(ns, gs);

本回答被提问者采纳

MATLAB怎样用数据算出正弦函数

可以用fit函数进行拟合,你可以查看帮助文件了解fit函数的具体用法。我举个简单的例子:
已知有一组数据:
x=[1 2 3 4 5 6 7 8 9 10];y=[0.1411 -0.2794 0.4121 -0.5366 0.6503 -0.7510 0.8367 -0.9056 0.9564 -0.9880]
然后对其进行拟合,你合成y=asin(bx)
代码如下:
mymodel=fittype(\'a*sin(b*x)\');
opts=fitoptions(mymodel);
[fit1,gof1,out1]=fit(x\',y\',mymodel,opts)
然后会显示结果对结果进行检查发现,系数值偏差很大,拟合情况很不理想,你可以通过gof1第一项察看,他是拟合后与拟合前y值差的平方和。
然后你可以调节待求系数的上下限,用opts.lower=[0 2];opts.upper=[2 4];这两个命令,[]里的值按判断设定,使拟合更合理。
参考技术A >>x=0.5236;
>>sin(x)
参考技术B lsqcurvefit函数,具体使用方法你可以查询

以上是关于急!matlab怎么算如下递归问题!!的主要内容,如果未能解决你的问题,请参考以下文章

matlab递归求解最长公共子序列(LCS)问题

关于 matlab 函数递归

SQL递归(高分,急).

递归的空间复杂度

matlab 递归调用例子

MATLAB中的递归函数句柄