講師:張餅ya、立ya(代替確診派對仔上課)
建電大赦課[6]
丟一個x進去,跑出對應的y
type 自定義函數名(參數) {
/* 你想做的事 */
return 回傳變數;
}
要使用前宣告!
#include <iostream>
using namespace std;
int f(int x){
return 2*x+1;
}
int main(){
cout << f(1) << endl;
cout << f(5) << endl;
cout << f(10000) << endl;
}
輸出:
為啥要用函數
(void例外)
當函數類型不是void時,就需要return
促使Function結束並回傳
int minus(int a,int b){
return a-b;
}
int num = minus(1,2);
cout<<num<<endl;
//num = -1
int divide(int a,int b){
if(b==0){
return -1;
}
return a/b;
}
然後其實void也可以return喔~
只是不是return值,是直接return
int ???(int a,int b,int c){
//你要做的事
return x1,x2;
}
不能這麼做!
std::pair
struct
只能做為函數類型 , 不能作為變數型別
void im_lemonilemon_status() {
cout << "lemon tested positive\n";
}
void沒有回傳變數,可以不用return
gcd(a,b)
:回傳a和b的最大公因數
lcm(a,b)
:回傳a和b的最小公倍數
swap(a,b)
:交換a和b
max(a,b)
:回傳a或b較大的那個
min(a,b)
:回傳a或b較小的那個
abs(n)
:回傳絕對值n
swap(a, b)
交換a, b的值min(a, b)
回傳比較小的那個gcd(a, b)
回傳最大公因數int min(int a, int b){
if(a<b){
return a;
}else{
return b;
}
}
int gcd(int a, int b){
if(a>b) swap(a, b);
while(a!=b){
if(a > b){
a -= b;
} else{
b -= a;
}
}
return a;
}
int gcd(int a, int b){
if(a<b) swap(a,b);
int tmp = 1;
while(tmp != 0){
tmp=a%b;
a=b;
b=tmp;
}
return a;
}
void swap(int &a, int &b){
//&是指標,之後會學到
int temp;
temp = a;
a = b;
b = temp;
}
lcm(a,b)
:回傳a和b的最小公倍數
min(a,b)
:回傳a或b較小的那個
abs(n)
:回傳絕對值n
祝我們不會被\(imlemonilemon\)傳染