Python 遞迴計算分數數列

2022-08-26 19:54:09 字數 799 閱讀 8055

c語言的課後習題

求數列:2/1,3/2,5/3,8/5,13/8,21/13,...前50項的和

數列規律:

第二項的分母是【前一項分子】

第二項的分子是【前一項分子與分母的和】

from fractions import fraction

def fn(x):

"""計算每一項的值

"""time = 1

fz = 2

fm = 1

if x == 1:return fz / fm

#if x == 1:return fraction(fz, fm) 這句話是分數表示

else:

while time < x :

cost = fz + fm

fm = fz

fz = cost

time = time + 1

return fz / fm

#return fraction(fz, fm)

def sum_fn(x):

"""遞迴計算,進行函式每一項的相加

"""if x == 1:return 2

else:

return fn(x) + sum_fn(x-1)

a = int(input("請輸入連續加到的項數:"))

3 3 1 遞迴計算

3.3.1 遞迴計算 遞迴函式最常見的示例是計算乙個數的階乘。如果你不熟悉,這裡有乙個簡單的定義 乙個非負數 n 的階乘,當 n 等於 1 或 0 時,等於1 對於更大的 n,等於 n 1 的階乘乘以 n。這個函式的實現,基本上有兩種方式。在 c 中,可以使用 for 迴圈,數字在 2 到 n 之間...

python 遞迴計算n的價乘

計算輸入的任意n的階乘 方法一 import sys print 方法一 def func one n tmp 1 for i in range 1,n 1 tmp i print i return tmp re int input 請輸入您要計算的階乘數 sys.exit result func ...

分數數列演算法實現java

1.分數數列概念 乙個遞推的分數數列的前面六項為 1 2,3 5,4 7,6 10,8 13,9 15 歸納出數列的構成規律並輸出第n項以及前n項中的最大項的值 2.分析 該數列有兩個規律 1 分母d與分子c存在關係表示式 d c i,i表示當前顯示的是第i個數 2 分子c為前面i 1項中的所有分子...