【リニューアル記念】ブロガーへのSTEPを更新中!

プログラミングの関数とは?わかりやすく簡単に解説!

関数とは

プログラミングの関数とは、わかりやすく説明すると「自動販売機のようなもの」のことです。

自動販売機には、お金を入れるとジュースが出てきますよね?

プログラミングにおける関数も、これにとっても似ています!

関数とは、「何かを入れる」と「何かが出てくる」仕組みのことなのです。

やっていることはとっても簡単なので、あまり難しく考えすぎなければさらっと理解できちゃうと思います。

ここからは「変数」を知っていることが前提なので、「変数わからない!」という方は「プログラミングの変数とは?初心者にもわかりやすく解説!」を読んでね!

関数(function)とは

関数の仕組み

プログラミングにおける関数(function)とは、「自動販売機」をイメージしてもらえると理解しやすいと思います。

自動販売機の動きをシンプルにまとめるとこんな感じ。

  1. 「お金」を投入口に入れる
  2. 自動販売機が「動く」
  3. 「ジュース」が出る

これをプログラミングの関数に置き換えるとこうなります。

  1. 「値」を引数に入れる
  2. 関数が「処理する」
  3. 「戻り値(返り値)」が出る

ここでは、ざっくり「関数」のイメージをつかんでもらえれば十分です!

関数の使い方

関数を使うための手順は以下の2つだけです。

  1. 関数を定義する
  2. 定義した関数を実行する

まずは、関数が「どのような処理をするのか」を事前に定義する必要があります。

定義したあとは、その関数を呼び出す(実行する)だけ。

では、関数の「定義」と「呼び出す」ための方法をもう少し詳しく見ていきましょう!

関数を定義する

関数にどのような動きをさせるのか、事前に設定しておくことを「関数を定義する」といいます。

関数を定義していなければ、もちろん関数を使うことはできません。

キツネ

存在しないものを使うことなんて無理だよね!

では、さっそく関数定義の基本的な構成を見てみましょう。

関数定義の構成
関数名(引数) {
    処理;
    return 戻り値; 
}

ここでやっていることは以下の4つです。

  1. 「関数名」を書く
  2. 「引数」を書く
  3. 実行したい「処理」を書く
  4. returnのあとに「戻り値(返り値)」を書く

関数名」は「関数を呼び出すために必要な名前」です。関数名は自由につけることができます。

引数」は「関数で受け取りたい値(関数の中で使いたい値)」のことです。大体の場合はここに「変数」を指定して、受け取った値を格納して使います。引数を使わないのであれば書く必要はありません。

「処理」は「自分のやりたい処理」を書きます。さきほど受け取った引数の値はここで使うことができます。

戻り値(返り値)」は「処理の結果を呼び出し元に渡す値」のことです。この戻り値も不要であれば書く必要はありません。

キツネ

「返す」とか「戻す」って言葉に違和感があるけど、よく使われる表現だから「こういうものなんだ」で覚えよう!

関数を呼び出す(実行する)

では、次に関数の呼び出し方を見てみましょう。

関数を呼び出す(実行する)方法はとっても簡単です。

関数の実行(引数あり)
関数名(引数);

呼び出したい「関数名」と「引数(関数に渡したい値)」を記述するだけです。

この1文を書くだけで関数を実行できます。

また、引数が設定されていない関数を呼び出す場合は以下のように書きます。

関数の実行(引数なし)
関数名();

ユーザー定義関数と組み込み関数

関数を呼び出すためには、「事前に関数の定義をする」とお伝えしました。

ですが、なかには「自分で関数を定義しなくても呼び出すことのできる関数」があります。

それが「組み込み関数」です。

組み込み関数はプログラミング言語にあらかじめ定義されている関数なので、わざわざ自分で定義しなくても簡単に呼び出すことができます。

キツネ

組み込み関数は見えないところで定義されているよ!

これに比べ、自分で定義する必要がある関数を「ユーザー定義関数」といいます。

ユーザー定義関数のメリットは、「自分の好きな処理を関数として使うことができる」ところです。

簡単にまとめると

  • 「組み込み関数」…プログラミング言語で定義されている関数
  • 「ユーザー定義関数」…自分で定義した関数

組み込み関数を利用できるところは利用し、オリジナルの関数を作りたい場合のみユーザー定義関数を利用するのが一般的です。

まとめ:関数の使用例

では、最後のまとめとして関数の使用例をいくつか紹介します。

プログラミング言語によって関数の記述方法が違うことにも注目してください。

まずは、プログラミング言語「PHP」で関数を使う場合です。

関数の使用例(PHP)
// 関数の定義
function calculation($price) {
    $total_price = $price * 1.08;
    return $total_price; 
}

// 関数の呼び出し
$result = calculation(100);

なんだか英語ばかりで難しそうに見えますが、さきほどの構成と見比べるとわかりやすいと思います。

実際の処理の流れは以下のようになります。

  1. 関数「calculation」の引数に「100」を渡して呼び出す
  2. 引数として受け取った「100」を、変数「$price」の中に格納する
  3. 「$price」に「1.08」を乗算した結果を変数「$total_price」に代入する
  4. 「$total_price」を呼び出し元に返す(渡す)
  5. 変数「$result」の中に「108」が代入される

途中の「$」は「変数」を表しています。これはPHP特有の書き方です。

また「*」は「×(掛け算)」を表しています。ちなみに割り算の場合は「/」で表現します。

次は「Ruby」での関数の書き方を見てみましょう!

関数の使用例(Ruby)
# 関数の定義
def calculation(price)
    total_price = price * 1.08
end

# 関数の呼び出し
result = calculation(100)

やっていることはPHPと同じですが、Rubyは不要な記述を省略して書けるため、他のプログラミング言語と比べて「綺麗で見やすいコード」になります。

僕が「初心者が覚える最初の言語」としてRubyをオススメしている理由の1つでもあります。

テキストのコピーはできません。