问题描述
创建一个函数,该函数可以运行此循环以从任意给定的数字开始生成任意大小的斐波那契数列(即,它不必以1开头)。例如,从数字y开始的长度为x的序列,其中x和y是函数的输入。
到目前为止,这是我的代码。我的代码问题是,每当我说选择7作为长度时,我都会得到偶数个输出。此数字取决于while循环,在该循环中我更改了“ nterms”值,但我不知道如何纠正它。其他一切似乎都起作用。
{
# take input from the user
nterms = readline(prompt="How many terms? ")
nterms = as.integer(nterms)
# take input from the user
x = readline(prompt="Starting Number?")
x = as.integer(x)
}
Phi <- (1 + sqrt(5))/(2)
phi <- 1/(Phi)
i <- 1
fib1 <- ((Phi)^(x-1)-(-phi)^(x-1))/(sqrt(5))
fib2 <- ((Phi)^(x-2)-(-phi)^(x-2))/(sqrt(5))
fibonnaci <- c()
while (i <= nterms-3)
{
fib1 <- fib1+fib2
fib2 <- fib1+fib2
fibonnaci=c(fibonnaci,fib1,fib2)
i <- i+1
}
fibonnaci
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)