R语言。。。求解释code
>Fib1<-1>Fib2<-1>Fibonacci<-c(Fib1,Fib2)>while(Fib2<300){+Fibonacci<-c(Fibonacci,Fib2...
> Fib1 <-1
> Fib2 <-1
> Fibonacci <- c (Fib1,Fib2)
>while ( Fib2<300) {
+ Fibonacci <- c (Fibonacci, Fib2)
+ oldFib2 <- Fib2
+ Fib2 <- Fib1 + Fib2
+ Fib1 <- oldFib2
+}
Q1,能详细解释下while里那4行吗,流程是怎样的。
Q2, oldFib2也不是那么需要的,如何根据目前Fib1和Fib2的值用更新Fib1来写这code?
Q3, 事实上,Fib1 和Fib2也不是必要的,如何只用Fibonacci这个变量来重写这code? 展开
> Fib2 <-1
> Fibonacci <- c (Fib1,Fib2)
>while ( Fib2<300) {
+ Fibonacci <- c (Fibonacci, Fib2)
+ oldFib2 <- Fib2
+ Fib2 <- Fib1 + Fib2
+ Fib1 <- oldFib2
+}
Q1,能详细解释下while里那4行吗,流程是怎样的。
Q2, oldFib2也不是那么需要的,如何根据目前Fib1和Fib2的值用更新Fib1来写这code?
Q3, 事实上,Fib1 和Fib2也不是必要的,如何只用Fibonacci这个变量来重写这code? 展开
1个回答
展开全部
Q1
将Fib2加到Fibonacci 里
存Fib2
算新的Fib2
把Fib1变成循环刚开始的Fib2
Q2.
while (Fib1+Fib2 < 300) {
Fibonacci <- c(Fibonacci, Fib1+Fib2)
Fib1 = Fib2
}
Q3
Fibonacci <- c(1,1)
while (tail(Fibonacci, n=1) < 300) {
Fibonacci <- c(Fibonacci, sum(tail(Fibonacci, n=2)))
}
追问
Q3那个,tail那个做什么的,能解释下那2行吗。
追答
tail 是从一个数组里取出最后的n个数,所以while里面是取出最后一个,sum(tail(Fibonacci, n=2))是最后两个数之和
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询