R语言程序:打印斐波那契序列
在这个示例中,您将学习如何使用while循环打印斐波那契数列。
要理解这个示例,您应该掌握以下R编程的主题:
斐波那契数列是以下整数序列的一部分:
0, 1, 1, 2, 3, 5, 8...
前两项是0和1。所有其他项都是通过将前两项相加而获得的。
这意味着第n项是(n-1)项和(n-2)项的和。
您还可以使用递归函数打印斐波那契数列。了解更多关于如何使用递归打印斐波那契数列的信息。
示例:打印斐波那契数列
# 从用户那里获取输入
nterms = as.integer(readline(prompt="要显示多少项? "))
# 前两项
n1 = 0
n2 = 1
count = 2
# 检查项数是否有效
if (nterms <= 0) {
cat("请输入一个正整数。")
} else if (nterms == 1) {
cat("斐波那契数列:")
cat(n1)
} else {
cat("斐波那契数列:")
cat(n1, ", ", n2, ", ")
while (count < nterms) {
nth = n1 + n2
cat(nth, ", ")
n1 = n2
n2 = nth
count = count + 1
}
}
输出
要显示多少项? 7
[1] "斐波那契数列:"
[1] 0
[1] 1
[1] 1
[1] 2
[1] 3
[1] 5
[1] 8
在这里,我们询问用户数列中有多少项。我们将第一项初始化为0,第二项初始化为1。
如果项数大于2,我们使用while
循环来找到数列中的下一项。
在while循环内,我们首先分别打印前两项n1
和n2
。然后,我们通过将最后两项相加来计算下一项nth
并打印它。
现在,我们将n1
和n2
的值更新为最后两项,即将n2
中的项更新为n1
,并将刚计算的项nth
更新为n2
。
这样一直持续下去,直到项数达到用户输入的nterms
为止。