如何使用 While 循环、For 循环和递归编写 Python 斐波那契数列程序?。根据数学,斐波那契数或数列是 0,1,1,2,3,5,8,13,21,34 …
使用 While 循环的 Python 斐波那契数列程序
这个 Python 程序允许用户输入任何正整数。接下来,这个程序使用 While 循环显示从 0 到用户指定数字的 Python 斐波那契数列。
Number = int(input("\nPlease Enter the Range : "))
# Initializing First and Second Values
i = 0
First_Value = 0
Second_Value = 1
# Find & Displaying
while(i < Number):
if(i <= 1):
Next = i
else:
Next = First_Value + Second_Value
First_Value = Second_Value
Second_Value = Next
print(Next)
i = i + 1
Please Enter the Range : 4
0
1
1
2
python 中的斐波那契数列程序允许用户输入任意正整数,然后将该数赋给变量 number。接下来,我们声明了三个整数变量 I,第一个值和第二个值以及赋值。
下面的 Python While 循环确保循环从 0 开始,并且小于用户给定的数字。在 Python 斐波那契数列程序的 While 循环中,我们使用了 If 语句。
- 如果 I 值小于或等于 1,则 Next = i
- 如果 I 值大于 1,则在 Else 块内执行计算。
让我们从迭代的角度来看 python 例子中斐波那契数列中 while 循环的工作原理。在这个斐波那契数列的例子中,用户输入的值:数字= 4,i = 0,第一个值= 0,第二个值= 1
Python While Loop 第一次迭代
- 而(0 < 4)为真。因此,程序在这段时间内开始执行语句。
- 在 while 循环中,我们有 If 语句和条件 if (0 < = 1)为真。因此,Next = 0,编译器从 if 语句块退出。
- 打印对帐单打印(下一步)打印值 0。
- 最后,我增加到 1。
Python 斐波那契数列边循环边二次迭代
- 而(1 < 4)为真。
- 不一会儿,我们有了 Python If 语句和条件 if (1 < = 1)为真。因此,Next = 1,编译器从 if 语句块退出。
- 打印对帐单打印(下一步)打印值 1。
- 我数到 1。
第三次迭代:While (2 < 4) is TRUE in this Fibonacci series in python. The condition if (2 <= 1) is FALSE, so statements inside the else block to start executing.
下一个=第一个 值+第二个 值 下一个= 0 + 1 = 1 第一个 值=第二个 值= 1 第二个 _ 值=下一个= 1
接下来,打印语句打印(下一步)打印值 1。最后,我增加到 1
第四次迭代:while (3 < 4) is TRUE. So, the Python 程序开始执行 while 内部的语句。
条件是(3 <= 1) is FALSE 下一个= 1 + 1 = 2 第一个 值=第二个 值= 1 第二个 _ 值=下一个= 2
接下来,打印语句打印(下一步)打印值 2。最后,我增加到 1
第五次迭代:While (4 < 4) is FALSE so, it exits from the while loop.
下一个值的最终输出是:0 1 1 2
Python 中使用 For 循环的斐波那契数列
这个 Python 程序使用 For Loop 显示从 0 到用户指定数字的斐波那契数列。
# It will start at 0 and travel upto below value
Number = int(input("\nPlease Enter the Range : "))
# Initializing First and Second Values
First_Value = 0
Second_Value = 1
# Find & Displaying
for Num in range(0, Number):
if(Num <= 1):
Next = Num
else:
Next = First_Value + Second_Value
First_Value = Second_Value
Second_Value = Next
print(Next)
Please Enter the Range : 10
0
1
1
2
3
5
8
13
21
34
Python 中使用递归的斐波那契数列
这个 Python 程序使用递归概念显示了从 0 到用户给定数字的斐波那契数列。
# Recursive Function Beginning
def Fibonacci_series(Number):
if(Number == 0):
return 0
elif(Number == 1):
return 1
else:
return (Fibonacci_series(Number - 2)+ Fibonacci_series(Number - 1))
# End of the Function
# Series will start at 0 and travel upto below value
Number = int(input("\nPlease Enter the Range Number: "))
# Find & Displaying Them
for Num in range(0, Number):
print(Fibonacci_series(Num))
在这个斐波纳契数列的 python 程序中使用递归的例子,我们定义了一个函数。以下函数接受整数值作为参数值和返回值。
def Fibonacci_series(Number):
让我们看看上面指定的函数里面的 Elif 语句
- if (Number == 0)检查给定的数字是否为 0。如果为真,函数将返回值零。
- if(Number == 1)检查给定的数字是否为 1。如果为真,函数返回值 1。
- 如果这个数字大于 1,else 块中的语句就会被执行。
在 Else 块中,我们递归调用函数来显示结果。
return (Fibonacci_series(Number-2)+ Fibonacci_series(Number-1))
为了演示 python 中使用递归的斐波那契数列程序,Number= 2
(斐波那契数列(数字-2)+斐波那契数列(数字-1))
(斐波那契数列(2–2)+斐波那契数列(2–1))
意思是,(斐波那契数列(0)+斐波那契数列(1))
return (0 + 1) = return 1