编写一个计算斐波那契数列的函数,采用递归方式,输出不超过n的所有斐波那契数列元素 调用上述函数,完成如下功能: 用户输入一个整数n,输出所有不超过n的斐波那契数列元素、输出数列元素的和及平均数,输出按照顺序,用英文逗号分割
时间: 2024-10-22 10:07:08 浏览: 40
编写一个递归函数用于计算斐波那契数列,可以这样实现:
```python
def fibonacci(n):
if n <= 0:
return []
elif n == 1:
return [0]
elif n == 2:
return [0, 1]
else:
fib_sequence = [0, 1]
while fib_sequence[-1] + fib_sequence[-2] <= n:
fib_sequence.append(fib_sequence[-1] + fib_sequence[-2])
return fib_sequence
# 用户输入
n = int(input("请输入一个整数n: "))
# 计算并输出斐波那契数列
fib_nums = fibonacci(n)
output_sequence = ', '.join(str(num) for num in fib_nums)
# 计算和与平均数
sum_fib = sum(fib_nums)
average_fib = sum_fib / len(fib_nums) if fib_nums else None
# 输出结果
print(f"不超过{n}的斐波那契数列为: {output_sequence}")
print(f"数列元素的和为: {sum_fib}")
if average_fib is not None:
print(f"平均数为: {average_fib}")
```
这个函数首先检查输入值n,然后生成并返回长度不超过n的斐波那契数列。接着,我们计算数列的总和和平均数(如果数列非空),最后将结果按照要求输出。
阅读全文