我想创建一个以数组中前两个元素开头的函数,然后从它们创建Fibonacci序列,但它会创建一个带有小数等的奇怪矩阵,并且它的数量是它的两倍我想要的每一列。当我查看它时,这是我在努力完成文档后想出来的。
我几乎没有使用MATLAB的经验,而且我已经习惯了python。我还没有能找到真正解决我问题的任何东西。或者帮助。
function [f,s] = fibb(nmax)
f = array(1,0);
% first two items in array are 0 and 1 respectively
for n = 3 : 1 : nmax
f(n) = [f(n-1) + f(n-2) newElem];
% Adds new entry, entry is sum of previous two
end
s = sum(f);
% sum of the sequence
答案 0 :(得分:0)
select max(id) from student
不是Matlab中的内置函数。此外,Fibonacci序列以sessionFactory.getCurrentSession().createQuery("select max(id) from student");
开头。
尝试以下方法:
array
可能有一种更有效的方法,但这应该是您的代码的工作版本。
答案 1 :(得分:0)
作为RPM编写的补充,我建议您预先分配f矢量以使其更快地工作。只需将f = [1,1]
命令替换为下面的命令:
f = ones(1,nmax);
否则,matlab必须在每个循环中动态增加向量的大小,使你的函数变慢。