PR

プログラミングの関数とは?引数・戻り値・呼び出しの基本を解説

プログラミングの関数 データサイエンティスト検定
スポンサーリンク

はじめに

プログラムでは、同じような処理を何度も書くのではなく、ひとまとまりの処理に名前を付けて必要なときに呼び出すことがあります。この仕組みを理解すると、処理の役割を分けて考えやすくなります。

その基本となるのが関数です。この記事では、関数が何のために使われるのかを確認し、引数で値を渡し、関数内で処理し、必要なら戻り値として結果を受け取る流れを解説します。特定のプログラミング言語の構文ではなく、言語を問わず役立つ考え方に絞ります。

関数とは

関数とは、特定の処理をひとまとまりにして名前を付け、必要なときに呼び出せるようにしたものです。例えば「2つの数値を受け取り、合計を求める」という処理を関数にしておけば、同じ計算が必要になるたびに処理内容を最初から書き直す必要がありません。

関数には、外部から値を受け取るものも、値を受け取らずに決まった処理だけを行うものもあります。また、処理した結果を呼び出し元へ返す関数もあれば、結果を返さず処理だけを行う関数もあります。

関数を使う理由

関数を使う主な理由は、処理を役割ごとに分け、同じ処理を再利用しやすくするためです。長い処理をすべて一続きに書くと、どこで何をしているのか追いにくくなります。処理を関数として分けると、関数名から役割を読み取りやすくなります。

同じ計算や変換を複数の場所で使う場合にも、関数としてまとめておくと修正箇所を減らせます。処理内容を変更するときに、同じ処理を記述した場所を一つずつ探すのではなく、関数の中を直すことで利用箇所へ同じ変更を反映しやすくなります。役割が分かる関数名を付けておけば、呼び出し側の処理も読み取りやすくなります。

関数を理解するための基本要素

要素役割
関数名どの処理を呼び出すかを識別する合計を求める関数
引数呼び出し元から関数へ値を渡す10と20を渡す
処理関数の中で必要な計算や判定を行う10と20を足す
戻り値関数から呼び出し元へ結果を返す30を返す

ここでは、名前を付けて呼び出す基本的な関数を例にします。関数を考えるときは、「何という処理か」「何を受け取るか」「中で何をするか」「何を返すか」に分けると整理しやすくなります。ただし、すべての関数が引数と戻り値の両方を持つわけではありません。

関数の呼び出しと引数・戻り値の流れ

引数で関数へ値を渡す

引数は、関数に処理してほしい値を渡すために使います。例えば合計を求める関数へ10と20を渡せば、関数はその2つの値を使って計算できます。同じ関数でも渡す値を変えることで、異なるデータに対して同じ処理を利用できます。

より正確には、関数を定義するときに「ここで値を受け取る」と名前を付けた部分を仮引数、実際に関数を呼び出すときに渡す値を実引数と呼びます。日常的には両方をまとめて「引数」と呼ぶこともありますが、定義側と呼び出し側を区別すると処理の流れを理解しやすくなります。

戻り値で処理結果を受け取る

戻り値は、関数が処理した結果を呼び出し元へ返す値です。合計を求める関数に10と20を渡した場合、計算結果の30を戻り値として返せば、呼び出し元はその30を別の計算に使ったり、変数へ保存したりできます。

戻り値は、画面に表示される値そのものとは限りません。関数の中で結果を表示する処理と、結果を呼び出し元へ返すことは別の動作です。また、メッセージを表示するだけの処理など、呼び出し元で使う結果を返さない関数もあります。

関数を呼び出す流れ

関数を利用するときは、まず呼び出し元が関数を指定し、必要な引数を渡します。関数は受け取った値を使って処理を行い、戻り値がある場合は結果を呼び出し元へ返します。

例えば「価格と個数を受け取り、合計金額を返す関数」を考えると、呼び出し元が100と3を渡し、関数内で100×3を計算し、300を返すという流れになります。呼び出し元は、関数の内部でどのように計算しているかを毎回書き直さなくても、必要な値を渡して結果を利用できます。

外部ライブラリの関数へ進む前に

自分で作った関数だけでなく、外部ライブラリが提供する関数を使う場合も、基本的な考え方は同じです。利用者は、どの関数を呼び出し、どの引数を渡し、どのような戻り値を受け取るのかを確認して使います。

外部ライブラリでは、自分で関数の中身を書くのではなく、提供元が定めた仕様に従って利用します。実際に仕様書やドキュメントを確認しながら関数を使う方法は、外部ライブラリの使い方で詳しく解説しています。

まとめ

関数は、特定の処理をひとまとまりにして名前を付け、必要なときに呼び出せるようにしたものです。引数を使うと呼び出し元から関数へ値を渡せ、戻り値を使うと関数の処理結果を呼び出し元で利用できます。

関数を理解するときは、「何を受け取るか」「どの処理を行うか」「何を返すか」という流れに分けて考えると整理しやすくなります。まずこの基本を押さえておくと、自分で関数を作る場合だけでなく、外部ライブラリが提供する関数を使うときにも仕様を読み取りやすくなります。


タイトルとURLをコピーしました