機能4:再帰的機能(教師はそれを完全には理解していません。投稿にアクセスして詳細を読んでください)

再帰とは何ですか?

(1)再帰には明確な終了条件が必要です。そうでない場合、エラーが報告されます

(2)再帰を入力するたびに、問題の規模を以前よりも小さくする必要がある

(3)再帰の効率は高くありません。レベルが多すぎると、システムメモリがオーバーフローする可能性があります

関数を定義します。

def calc(n):
    print(n)
    calc(n)#関数を定義してから自分自身を呼び出し、常に自分自身をループするのは無限ループです

  

def calc(n):
    print(n)
    if int(n / 2)== 0:#これは、無限再帰関数を回避するための終了条件です
        nを返す
    return calc(int(n / 2))#recursive process 
calc(10)

#output result is 10、5、2、1

  

おすすめ

転載: www.cnblogs.com/yxzymz/p/12729551.html