ともろーの日記

Initializing . . .

Processing ではじめるプログラミング 12日目(関数のお話)

今日は関数のお話をします。

関数とは、処理をする箱のようなものです。

例えば、f(x)=x+1 という関数があったとします。

イメージとしては、箱に数字を入れると1が足されて出力されます。

xに3を入れてみると(箱に3を入れる)4が出てきます。

f:id:tomorrow63:20160531154650p:plain


プログラムでも、処理を行う箱(関数)を作ることができます。

一つ足すという関数をつくるためにはこのようなコードを書きます。

int f(int x){
  x = x+1 ;
  return x;
}

ここでの関数の名前はfです。入力は一行目のxという部分に入れられます。

出力はreturnのあとのxの値です。

それでは実行してみましょう!

何も起こりませんね

f:id:tomorrow63:20160531174527p:plain:w300

これは関数が呼び出されていないからです。

箱をつくっても箱の中に何も入れなければ何も起こりません。

箱に数を入れるプログラムを作ります。

void setup(){
  int a = 3;
  a =  f(a);
  print (a);
}

int f(int x){
  x = x+1 ;
  return x;
}

このプログラムを実行すると、以下の順番で処理が実行されます。

  1. int a = 3;
  2. f(a)で、今aに3が入っているので、f(3)となります。
  3. 関数部分int f() の部分へ行き、xに3が入れられます。
  4. f() の中の処理で、xに1が足されます。そのため、xが4となります。
  5. return x; でxに4が入っているので、4が返されます。4という結果がsetup()の中のf(a)の結果になります。
  6. setup()の中の処理に戻ります。 aに4が代入されます。
  7. print(a); でaの値(4)が出力されます。


f:id:tomorrow63:20160531175641p:plain:w300

このようにしてプログラムは実行されていきます。