はじめに
学校のプログラミングの授業で「関数って何だろう?」と悩む声をよく聞きます。実は私も最初は難しく感じましたが、基本を理解すれば誰でも理解できるようになります!
そこでこの章では、関数の基礎を中学生でもわかりやすく解説していきます。
具体的に、以下のポイントを中心に説明していきます。
- 関数とは何なのか?
- なぜ関数を使うと便利なのか?
- どうやって関数を書くのか?(引数と戻り値について)
一緒に関数の世界を探検していきましょう!
関数ってなに?🤔
はじめに、みなさんも電卓は使ったことありますよね?
例えば「1 + 1」と計算したいとき、電卓のボタンを押すと答えの「2」が出てきます。
実はこの電卓の仕組みこそ、関数の基本的な考え方なんです!
関数は、簡単に言うと「データを入れると、なにか便利な処理をして、結果を返してくれる箱」です。
身近な例で考えてみましょう!
自動販売機
- お金を入れる(入力)
- ボタンを押す(処理)
- 飲み物が出てくる(出力)
このように、関数は「入力」を受け取って、「処理」をして、「出力」を返す...という3つのステップで動いているんです!
どうして関数を使うの? 🎯
関数を使う理由として主に3つあります!
- 同じ作業を何度も書かなくて済む(手間が省ける!)
- プログラムが整理されて、読みやすくなる
- 修正しやすくなる
身近な例で考えてみましょう!
みなさんは授業でノートを取りますよね。アルバイトや仕事でも「メモを取るように」と言われることがあります。これは関数と同じような考え方なんです!
メモを取ることのメリット
メモをしておけば、忘れたとしてもメモを見返せばいいので、もう一度先生に聞く手間が省けますよね。先生や上司が説明した内容をメモすることで、内容を整理し、自分なりに読みやすくすることができます。
1. 何度も聞く手間が省ける!
- 内容を忘れても、メモを見返すだけで大丈夫
- 先生や上司に何度も同じことを聞かなくて済む
2. 整理して読みやすくなる!
- 説明された内容を自分なりにまとめられる
- 箇条書きやイラストを使って分かりやすく書ける
3. 間違いに気づきやすい!
- メモを見直すときに、間違いに気づくことができる
- 友達とノートを見せ合って、内容を確認できる
- 間違いを見つけたら、すぐに修正できる
このように、関数もメモと同じで「あとで使える形に整理しておく」便利な道具なんです!
どうやって関数を書くのか📚✍️
関数の使い方や、なぜ関数を使うのかを理解できたところで、次は実際にプログラミング言語Pythonを使って関数の書き方を説明していきます。また、「引数」と「戻り値」についても解説していきます!
Pythonで関数を定義するには、defキーワードを使います。基本的な構造は以下の通りです。
def 関数名():
処理内容
処理内容
関数の呼び出し方:
関数名()
例:挨拶する関数
まず、aisatuという関数を作ります。
def aisatu():
print("こんにちは!")
- 説明 : ここで、aisatu関数を定義しています。関数の中では、print("こんにちは!")を使って「こんにちは!」というメッセージを表示します
次に、aisatu関数を呼び出します。
aisatu()
実行結果:
こんにちは!
- 説明 : aisatu()を実行すると、先ほど定義したaisatu関数が呼び出され、関数内の処理が実行されます。その結果、「こんにちは!」と表示されます
次に、引数(ひきすう)とは?
引数とは、関数に渡す追加の情報のことです。関数の定義時に引数を指定することで、呼び出す際に値を渡せるようになります。
🎯 自動販売機で考えると...
自動販売機にお金を入れますよね?このとき:
- 120円入れるか
- 150円入れるか
これによって買える飲み物が変わります。
このときの「お金」が引数です!金額によって結果が変わるんです。
実際に名前を使った引数のプログラムをみてみましょう。
例:名前を使って挨拶する関数
def aisatu(name):
print(f"こんにちは、{name}さん!")
この関数を使うときは、nameを引数として渡します。
aisatu("元カノ")
実行結果:
こんにちは、元カノさん!
次に、戻り値について説明してみましょう! 📤
戻り値とは、関数が処理を終えた後に返す『結果』のことです。関数は内部で計算や処理を行い、その結果を関数を呼び出したコード(呼び出し元)に戻り値として返します。戻り値を受け取ることで、関数の結果を他の処理で利用することができるんです!
学校の先生からの答えを例に考えてみましょう
授業中、先生に質問をすると、先生は答えを返してくれます。この「先生の答え」が戻り値にあたります。
- あなた:質問をする人
- 先生(関数):質問に答えてくれる人
- 戻り値:先生からの答え
ポイント:戻り値は結果そのもの
先生は生徒からの質問に答えます。その答えが戻り値にあたります
もう一つの例え:自動販売機 🥤
自動販売機の例で、戻り値をみてみましょう。
- 自動販売機(関数):飲み物を提供する機械
- 操作:お金を入れてボタンを押す
- 戻り値:出てくる飲み物
流れ:
1. 操作を行う:お金を入れて、飲み物のボタンを押します
2. 自動販売機が処理する:選択された飲み物を用意します
3. 戻り値を受け取る:飲み物が出てきます
ポイント:戻り値は結果そのもの
自動販売機から出てくる飲み物が戻り値です。
引数と戻り値を使ったプログラミングを見てみましょう!
例:カップルの浮気回数を足すプログラムを作ってみましょう。
# カップルの浮気回数を合計する関数を作成します
def Couple(kanojo, karesi):
# 彼女と彼氏の浮気回数を足します
goukei = kanojo + karesi
# 合計を返します
return goukei
# 彼女と彼氏の浮気回数を設定
uwakikaisu = Couple(12, 2)
print(f"浮気回数の合計は: {uwakikaisu}回です")
実行結果:
浮気回数の合計は: 14回です
まとめ
-
関数とは:入力を受け取り、処理を行い、結果を出力する「便利な箱」のようなものです。
-
なぜ関数を使うのか:同じ作業を繰り返し書かなくて済み、プログラムが整理され、修正もしやすくなるからです。
-
関数の書き方:defキーワードを使って関数を定義し、必要に応じて引数や戻り値を使います。
-
引数:関数に渡す追加の情報で、関数の動きを柔軟にします。
-
戻り値:関数が処理した結果を返し、他の処理で利用できます。
参考
記事
https://aiacademy.jp/media/?p=127#i-0
動画
https://www.youtube.com/watch?v=guZjjg5eaiI
https://www.youtube.com/watch?v=OKIG2FB_5Ak