プログラミングにおける関数とは?

こんにちは!

よーだです!

 

あなたは関数と聞くと、

y=2x+1

みたいな、xとyを使った式を

思い浮かべませんか?

 

数学ではその認識でも大丈夫ですが、

プログラミングを学ぶ際には

ちょっと危険です!

f:id:programming_g:20210912110922p:image

 

なぜなら、プログラミングでの関数は

数学のよりも広い意味を

持っているからです。

 

この認識のままだと、

実際に関数を書いたり見たりする時に

疑問点が生じます。

 

そしてそれが積み重なることで

苦手意識となってしまい、

授業で関数の話題が出ると、途端に

話についていけなくなります!

f:id:programming_g:20210912110929j:image

 

今までの常識を捨てるつもりで、

プログラミングにおける関数のイメージを

掴んでいきましょう!

 

関数とは一般に、

入力を受け取り、

それに応じた処理を行う

という構造をしています。

 

先程の例では、

xという入力を受け取り、

計算結果であるyを返す

という仕組みになっていますね。

 

プログラミング初心者の方は、

今まで関数という言葉を数学でしか

使っていなかったと思います。

 

そのため、

最後の「処理を行う」の部分が

「計算結果を返す」という認識に

なってしまっています。

f:id:programming_g:20210912110935j:image

 

ここで大事なのは、

最後に行われる「処理」に

様々なバリエーションがある

ということです。

 

例えば、変数の中身を変える、

配列を生成する、プログラムを終了する

などがあります。

(もちろん「計算結果を返す」も含まれます)

 

今まであなたが見たり書いたりした

関数は全て、最後の「処理」の部分が

存在しているはずです。

 

この事を理解すると、

関数はどれも同じ構造をしている

ということが分かるため、

関数が一気に簡単に感じると思います!

f:id:programming_g:20210912110942j:image

 

そのためまずは、

関数は計算結果を返すだけという

思い込みを捨ててみましょう!