iT邦幫忙

2022 iThome 鐵人賽

DAY 9
0

前言:因為程式是從上面往下運作,所以如果把function放在int main之後,電腦會不知道該怎麼辦,因此我們需要先跟電腦說“欸欸有東西在下面喔!”,就像事先declaring variable的意思一樣。

Function Prototype

function_name(int, int); //這條通知電腦注意下面有這個function
            //parameter只要放上資料類型data type即可
int main(){
    function_name(29, 07789326);   //呼叫function

}
int function_name(int age, int ID){
    cout << age << ", " <<ID;
}

遞迴Recursion是什麼

(也就是recursive function)
function需要有人呼叫才會執行,如上面所示。
Recursion很好用,會自己一直呼叫自己,自我無限繁殖的概念。

注意:一定要記得給繁殖訂一個極限,不然無限loop繁殖下去電腦會當機

C++中的recursion也是要包含data type,畢竟也是包在function裡嘛~
以下用找出1+2+3......100 = ?來做示範:

int sum(int num){
    if(num > 0){   //給無限繁殖訂一個極限,避免無限loop繁殖下去
        return num + num(number -1);
    } else {
        return 0;
    }
}
int main(){
    number(100);
}

最後結果等於5050。
有趣的是下面這個的結果也是一樣的喔!

int sum(int num) {
  if (k < 101) {   
    return num + number(num + 1);
  } else {
    return 0;
  }
}

int main() {
   number(1);
   return 0;
}

Reference:https://www.programiz.com/cpp-programming/function, geeksforgeeks


上一篇
Day08- C++ function函數 - 參數Parameter
下一篇
Day10 - C++物件導向前奏 - 結構Struct
系列文
C++超級菜鳥也可以懂的物件導向攻略30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言