関数ってなに?小学生でも分かる!プログラミングの基本知識

プログラミングの基礎知識

プログラミング学習をするときに必要となる知識はの一つが、関数です。

関数とは、面倒な処理を誰かに丸投げしてやってもらうことだよ。

変数とセットで使うことも多いからね。変数については、下の記事で詳しく書いてあるよ。
変数ってなに?小学生でも分かる!プログラミングの基本知識

関数について、小学生でも分かるように、詳しく説明していくよ。

 

関数ってなに?

 

機会は、同じ処理を何度もするのがとっても得意です。

たとえば、足し算

2+2
4+5

ぐらいなら、私たち人間も暗算でパパパッと計算できちゃうよね。

でも、

365937503+475906204

の答えは?

っていきなり聞かれたら、すぐに答えられるかな?

きっと、難しいよね?

そんなときに

足し算をする関数(値1, 値2){

値1+値2

}

という関数があれば、

私たちは、

足し算をする関数(2, 2)
足し算をする関数(4, 5)
足し算をする関数(365937503, 475906204)

と書くだけで、計算できちゃうんだ。

ただの足し算だと、あまり有難みがわからないかもしれないけど、もっと複雑な

複雑な計算をする関数(値1, 値2){

(値1*0.75) + (値2/0.32)

}

という式だったら、これを

複雑な計算をする関数(6, 5)
複雑な計算をする関数(3, 8)

と、書けたらとっても楽に答えを求めることができるよね。

 

関数の書き方

 

関数は予約語としてあらかじめプログラムで用意されているものも多いんだけど、ない場合は自分で作ることもできるんだよ。

そのときの書き方を教えるね。

  1. function 関数名(引数1, 引数2) {
  2. retuen 計算式
  3. }

というふうに、書くんだよ。

1行目の

function 関数名(引数1, 引数2) {

から説明するね。

まず、関数を書くときには「function」を付けるんだ。functionは日本語で「関数」という意味なんだ。

functionの後ろには、関数名を書くよ。

関数名は、日本語が許されているプログラミング言語と、日本語が許されていないプログラミング言語があるから気を付けてね。

関数名は、その関数がどんな処理をするか?を分かりやすく言葉にしたものが良いよ。

もし、

「私がつくった素晴らしい関数」という名前にしてしまったら、この関数がどんな機能をもっているのか見当もつかないね。

足し算か、引き算か、掛け算かが全く分からないし、どんな時に使うべきものなのかも分からない。

関数を作ったときは、どんな関数なのか覚えていると思うけど、これを半年後、1年後に見た時に、どんな関数なのか、関数名を見ただけで想像できる名前がいいよ。

そして、「引数1」「引数2」というのは、関数が受け取る値のことだよ。

足し算の場合、


2と3を足して欲しいな

足し算をする関数(2, 3)


分かった。2と3だね。

function 足し算をする関数(2, 3)

というやり取りをしているんだね。

使用する値を伝えることを「値の引き渡し」というんだよ。

 

2行目の

retuen 計算式

の計算式の部分は「引数1+引数2」という式が入るから

retuen 引数1+引数2

になるね。

「return」というのは、答えを返すという意味なんだよ。

さきほどのやり取りだと、

足し算をしたよ。答えはね〇〇だよ

というふうに、答えを返してあげているんだよ。

 

関数同士の呼び出し

 

関数の呼び出しとは、関数に向かって「ちょっとお願い手伝って欲しい」と呼んで手伝ってもらうことだよ。

どうやって呼び出すか?というと

けんたくんは10歳です。ゆうきくんはけんたくんより8つ年上です。
けんたくんが15歳のとき、けんたくんとゆうきくんの年齢は合わせていくつですか?

という問題を求めるとき

function ゆうきくんの年齢(num)
return num + 2
}

function 2人の年齢の合計(num){
return num + ゆうきくんの年齢(num)
}

けんた君の年齢 = 15
答え = 2人の年齢の合計(けんた君の年齢)

というように、けんた君の年齢が20歳になっても、68歳になっても2人の年齢の合計を求めることができるんだよ。

 

まとめ

 

この記事を書いた人
asami

小学2年生の女の子と保育園に通う4歳の男の子のママです。
自宅で子どもと一緒にプログラミングが出来たらいいなと思い、ブログをはじめました。
プログラミング学習で子どもが喜んだこと、つまずいたこと等を子ども目線で発信していきたいと思います。

asamiをフォローする
プログラミングの基礎知識
asamiをフォローする
文系ママと娘のプログラミング学習

コメント

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