📌  相关文章
📜  使用while循环编写一个python程序来查找斐波那契数列达到一定的极限 - Python(1)

📅  最后修改于: 2023-12-03 15:36:37.588000             🧑  作者: Mango

使用while循环编写一个Python程序来查找斐波那契数列达到一定的极限

斐波那契数列是一个非常有趣的数学问题,它由0和1开始,后面的每个数都是前面两个数之和。即:0、1、1、2、3、5、8、13、21、34、……。编写Python程序来找到Fibonacci数列中的数字,直到满足给定的极限。

解决方案

我们可以使用while循环和一个列表来实现这个问题。首先,建立一个列表,包含前两个数字0和1。然后,建立一个while循环,每次迭代中添加前两个数字之和到列表中,并检查该数字是否超过了给定的极限。如果达到了极限,退出循环,反之继续添加数字。

def get_fibonacci_numbers(limit):
    fibonacci_numbers = [0, 1]
    while True:
        next_number = fibonacci_numbers[-1] + fibonacci_numbers[-2]
        if next_number > limit:
            break
        fibonacci_numbers.append(next_number)
    return fibonacci_numbers
  
# example usage
print(get_fibonacci_numbers(50))

执行这段代码,输出结果将是[0, 1, 1, 2, 3, 5, 8, 13, 21, 34]。

解释

这个程序定义了一个函数get_fibonacci_numbers(),它接受一个参数limit,用于规定需要找到的Fibonacci数列的上限。

在函数内,我们首先定义了一个列表fibonacci_numbers,它包含前两个数字0和1。

然后,在while循环中,我们定义了一个变量next_number,它是列表中最后两个数字之和。我们检查这个数字是否超过了给定的极限。如果超过了,我们就退出循环,反之就把这个数字添加到列表中。

最后,函数返回这个列表,其中包含了满足要求的Fibonacci数列。