区分の値を見つけるために、再帰関数を書きます

クリアランスは前記以下に示す機能の楽しさを実現するためのライトファン再帰関数(N)に必要なN個の入力は正の整数、出力されない場合は、正の整数であり、「非正の整数」。
ここに画像を挿入説明

知識

再帰関数とは何ですか

すなわち、再帰関数から関数自体、すなわち入れ子関数呼び出し、直接的または間接的に自分自身を呼び出す関数に、関数を呼び出します。

関数呼び出しメカニズムの説明

関数のいずれかとの間に画定された呼び出し元の関数と呼び出し先関数との間の(互いを呼び出すことができる)、互いに独立にネストすることはできません。関数呼び出しは、操作に関係なく呼び出される関数の状態に呼び出された関数に戻り、された後、呼び出し側の関数の状態を完全に復元することができるように、環境の保護と操作関数呼び出しのリターンアドレスで呼び出された関数を発生します。
呼び出された関数がコードの同じ本体の関数であるが、コールの点、呼状態、異なる点で戻り、コピー機能として見ることができる、に関係なくコードの関数を呼び出す、コードの関数であるが、コードは、実行されます独立しました。機能間の通話データは無関係ですので、呼び出された関数を実行しているスタック領域は、関数呼び出しスタック空間とは無関係です。機能間のリンクにパラメータと戻り値を渡すことによって、ブラックボックスの機能としてみなさ。

再帰呼び出しの形で

再帰呼び出し再帰呼び出しの2つの形式で直接・間接の再帰呼び出し。
直接再帰関数は、それ自体が関数に表示されます呼び出します。
間接再帰呼び出しは、関数呼び出し、他の関数が、この関数を呼び出す他の関数です。

要件のプログラミングは、関数の値を求めて必要なセグメントを達成するために現在、関連するプログラミングタスク補数STEP1 / RecSegFunCal.cppファイル楽しい機能にあります。

int Fun(int n)
{
    if(n<=3)
 {
  return n;
 }
 else
 {
  return Fun(n-1)+Fun(n-3);
 }
}
公開された102元の記事 ウォン称賛93 ビュー4961

おすすめ

転載: blog.csdn.net/huangziguang/article/details/104783908