麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > C++ > 正文

C++教程:C++函數的遞歸調用

2020-05-23 14:27:39
字體:
來源:轉載
供稿:網友
在高中數學中,我們學習過數列。我們知道數列有兩種表示方法,一種稱為通項公式,即項an和項數n的關系;還有一種稱為遞推公式,即后一項an和前一項a(n-1)之間的關系。通項公式能夠一下子把an求解出來,而遞推公式則要根據首項的值多次推導才能把第n項的值慢慢推導出來。如果有一個較為復雜的數列的遞推公式,人工將其轉化為通項公式或者將其的每一項求出實在非常麻煩,那么我們能不能直接把這個遞推公式交給計算機,讓它來為我們求解呢?

我們說過,在任何一個函數體內不能出現其它函數的定義。但是,在任一個函數體內可以調用任何函數,包括該函數本身。直接或者間接地在函數體內調用函數本身的現象稱為函數的遞歸。正是函數的遞歸,能夠幫我們解決遞推公式求解的問題。

現有一個數列,已知an=2*a(n-1)+3,并且a1=1,求解a1到a8的各項值。我們把數列問題轉化為函數問題,認為an=f(n),a(n-1)=f(n-1)……于是f(n)=2*f(n-1)+3,f(n-1)=2*f(n-1-1)+3……直到f(1)=1。我們根據前面的描述寫出以下程序:(程序6.6)
#include "iostream.h"
int f(int n);//看作數列an
int main()
{
   for (int i=1;i<=8;i++) 
   {
      cout <<"f(" <<i <<")=" <<f(i) <<endl;//輸出a1到a8的值
   }
   return 0;
}
int f(int n)
{
   if (n==1)
   {
      return 1;//告知a1=1
   }
   else
   {
      return 2*f(n-1)+3;//告訴電腦f(n)=2*f(n-1)+3
   }
}
運行結果:
f(1)=1
f(2)=5
f(3)=13
f(4)=29
f(5)=61
f(6)=125
f(7)=253
f(8)=509
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 特色一级黄色片 | 成人啪啪18免费网站 | 日本欧美一区二区三区在线播 | 4p一女两男做爰在线观看 | av在线免费观看网 | 国产伦精品一区二区三区 | 黄色片网站在线免费观看 | 国产一区视频在线观看免费 | 久久伊人国产精品 | 国产美女视频黄a视频免费 日韩黄色在线播放 | 99seav| 国产精品视频一区二区三区四 | 久久艹综合 | www.9191.com | 国产精品一区久久久久 | 国产精品久久久久久久久久三级 | 久国产精品视频 | 久久午夜神器 | av在线播放电影 | 国产精彩视频在线 | 一级尻逼视频 | 欧美成人一二三区 | 国产a一级片 | av电影免费观看 | 日韩毛片毛片久久精品 | 97香蕉超级碰碰久久免费软件 | 亚洲第五色综合网 | 国产韩国精品一区二区三区久久 | 国产免费永久在线观看 | 日本精品网 | 手机免费看一级片 | 草逼一区 | 热re91久久精品国产99热 | 国产大片免费看 | 久久老司机 | 狠狠撸电影 | 麻豆传传媒久久久爱 | 福利四区 | 成人免费看片a | 日本成人午夜视频 | 黄色片网站免费 |