微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

代码问题涉及在给定起始编号和要求的术语数量时输出fibonnaci序列

如何解决代码问题涉及在给定起始编号和要求的术语数量时输出fibonnaci序列

这是我正在统计课上从家庭作业中解决的问题

创建一个函数,该函数可以运行此循环以从任意给定的数字开始生成任意大小的斐波那契数列(即,它不必以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 举报,一经查实,本站将立刻删除。