プログラマー(PG)・システムエンジニア(SE)になるための入門講座

プログラミングの関数とは?数学との違いは?引数や戻り値も解説

関数とは

プログラミングでいう関数とは、複数の小さめな処理をまとめて1つの独立した処理にしたものです。独立した処理なので、処理は何度でも呼び出せば使用できます。こうする事でプログラムで重複した部分を無くせるようになり、簡略化できるようになります。再利用できるという部分がとても重要です。

関数は入力された値を処理して処理したあとの値を出力するように作られています。入力された値は引数、出力させる値は戻り値とよばれています。

引数と戻り値

引数はヒキスウと読みます。インスウと読んでしまう人もたまにいますがそれだと因数分解の因数になってしまうので混乱を招きます。引数とは関数を呼び出すときに渡す値です。関数を呼び出すときに限らず何かを渡すときはその渡すものを引数と呼んでいますので頻繁に使われる言葉です。

引数を使って関数で処理をしたあとに出力する値を戻り値といいます。

数学との違い

数学の関数とプログラミングの関数とで違いがあるかというと、無いです。同じものです。違うように見えますが、教科書での書かれ方が違うだけで中身は同じです。

数学の関数ですとy=f(x)という式があり、xに何かいれるとyが導き出せると教わりましたが、yが戻り値でxが引数だという呼び方が数学ではあまり聞かないだけです。使われてはいるようですが文系出身の私は中学以降の関数では忘却の彼方です。

ちなみにfはfunctionの頭文字であり機能という意味です。数学でもプログラミングでも関数は値を処理する機能ということなのです。

Excelの関数も同じ

Excelにも関数はあります。あれ使いこなせるようになるとすごく仕事してる感が出る(患者無いですね、実際作業の簡略化と正確性の向上をしてますからね)あの関数です。

これもあるセルや範囲を引数として渡して、関数を書いたセル内で戻り値を表示してくれるものなので、同じものです。

関数の例(単位換算)

例えば単位変換の関数があるとします。リットルをデシリットルに換算する関数です。

数学だとこんな関数になります。

f(x)=10x

5デシリットルを換算したいとなるとxに5を代入することで下記のように計算できます。

10 × 5 = 50

これをプログラミングで説明すると、こうなります。

  1. ある処理Aが引数として5を換算処理Bに渡して処理を呼び出す
  2. 換算処理Bで10×引数、つまり10×5が計算され50が導き出される
  3. 導き出した50を換算処理Bから処理Aに返す

まとめ

モバイルバージョンを終了