関数

 

1. プログラム例

  1. <?php

  2.     header("Content-Type: text/plain; charset=X-SJIS");


  3.    // 人口密度を計算する関数

  4.     function cal_density($jinko, $menseki){

  5.         $mitsudo = $jinko / $menseki;

  6.         return $mitsudo;

  7.     }

  8.   

  9.     $fp = fopen("sample.txt", "r");


  10.     $num = 0;;

  11.     while(fscanf($fp, "%d %f %f", $name[$num], $popu[$num], $area[$num]) > 0) {

  12.         printf ("%d\t%5.0f\t%12.1f\t", $name[$num], $popu[$num], $area[$num]);

  13.         $area[$num] = cal_density($popu[$num], $area[$num]);

  14.         printf ("%10.1f\n", $area[$num]);


  15.         $num ++;

  16.     }

  17.     printf ("\nnum = %d\n", $num);


  18.     fclose($fp);

  19. ?>



2. 数学関数の使い方

  1.     sin(引数),cos(引数),tan(引数)

  2.           sin, cos, tanの値を返す.返す値はfloatの型である.

  3.           引数は,ラジアンの値floatの型で入力する.

  4.     atan(引数)

  5.           arctanの値を返す.返す値はfloatの型である.

  6.           引数は,floatの型で入力する.

  7.     sqrt(引数)

  8.           平方根の値を返す.返す値はfloatの型である.

  9.           引数は,floatの型で入力する.

  10.     log(引数1,引数2)

  11.           引数1の引数2を底とする対数を返す.返す値はfloatの型である.

  12.           引数2を省略した時は,自然対数を返す.

  13.           引数は,floatの型で入力する.

  14.     exp(引数)

  15.           eのべき乗を返す.返す値はfloatの型である.

  16.           引数は,floatの型で入力する.

  17.     pow(引数1,引数2)

  18.           引数1のべき乗を返す.返す値はfloatの型である.

  19.           引数は,floatの型で入力する.


3. 関数の作り方

  1. 良く利用する部分や複雑な処理は,関数を作り,それを利用すればプログラムが見やすくなり,バグも少なくなる.

  2. 関数名は,既に組み込まれている名前でない限り,自由につけられる.

  3. 関数がどんな値を返すのか(戻り値),その型を意識し,メインとなる部分の前に関数(function)を記述する.

  4. 関数は,ある変数の値が入力され(引数),それを関数は処理をし,計算結果を返す.

  5. 引数の数が,複数ある場合は,コンマで区切って表す.

  6. 関数の中で使われている変数名は,その関数の中でしか有効でない.

  7. 戻り値は,return 文によって返される.

  8. 例題の関数areaityは,人口と面積(m2)を引数とし,人口密度(人/km2)の値を戻り値として返している.

  1.     1人一年あたりの米消費量を59(kg)とする.県ごとの人口を入力すると,米消費量(t)が計算される関数conv_rice()を作成しなさい.

  2.     sample.txtと作った関数を用いて,県番号,県別人口,県別米消費量(kg)のデータを出力するプログラムを完成させなさい.出力は,

  3.       No.=○○○, Popu.=○○○, Rice=○○○○○.○(t)

  4.       というコンマ区切りの形式で出力されるものとする.

  5.     変更したプログラムは,"p07.php"という名前で保存しなさい.

  6.     保存場所は,~/local_html/Program/p07.php

  7.     このプログラムをWebブラウザで確認しなさい

  8.           http://www.wsk.kochi-tech.ac.jp/username/Program/p07.php




課題