学生時代、数学は好きでしたか?
わたしは、数ある教科の中でも数学が1番好きでした。
大学時代も情報系の学部でしたので、かれこれ10数年〜プログラミングをしているのですが、
プログラミングと数学は似ている
と思う点があります。

今回の記事では、プログラミングと数学に共通する点を考察していきます!
プログラミングと数学の似ている点4つ
プログラミングと数学が似ていると感じる点は、全部で4つあります。
タップして読みたいところに飛べます



では、順番に説明していきます!
その1.ゴールが決まっている
- プログラミング
⇨「賞味期限切れの商品をスキャンしたときにエラーを通知する」 - 数学
⇨「円周率が3.05より大きいことを証明する」
プログラミングも数学も、ゴール(目指すべきところ)が明確に決まっています。



ゴールまでのプロセスを、いかにして考えていくかという点が似ているし面白い!
目指すべきところが決まっているというのは、ある意味ラクです。
ゴールから逆算して考えれば良いだけですからね。
その2.ゴールまでのプロセスは自由
プログラミングも数学も、ゴールまでのプロセスは自由です。
両者とも、プロセスはどうであれゴールにたどり着けばOKという見方もできます。
ですが、プロセスの美しさってあるんですよね。
- 省略できる処理はないか
- メモリをやたら消費する作りになっていないか
- 可読性の高い、シンプルな作りになっているか
数学は他人の解答を見ると、こんな解き方があるのかと驚くことがあると思います。
プログラミングも他人のコードを見ると、色々と勉強になりますよ。



もちろん、ちゃんと動くことのほうが重要ですが、限られた時間の中で美しいコードを書けるかは腕の見せどころ。
その3.基礎の組み合わせでゴールへ向かう
プログラミングも数学も、ゴールは複雑であってもプロセスを分解していくと、基礎的なことの組み合わせだったりします。
数学は、いざ答えを見てみると「なんだ、こんなことか」と思うことってありますよね。
プログラミングもその感覚に近いです。



シンプルなピースに分解して、パズルのように組み合わせていくような感じ!
基礎をしっかりと習得したら、実践にうつって数をこなしていくのが◎
その4.ゴールにたどり着いたときの達成感
難しい数学の問題を解けたときって、達成感がありますよね。
プログラミングも複雑な処理ほど、想定の動作を実装できたときの達成感が凄いです。
下手すると、数日頭を悩ませることもあって苦しいですが、無事ゴールにたどり着いたときの達成感でチャラになるときがあります。



複雑な処理を、シンプルなコードで完成できたときの達成感は、特にすごい!
プログラミングと数学の関係性
では「数学が得意じゃないとプログラミングは向いてないのか?」と言われるとそうでもないです。
わたしが経験してきた企業でも、文系出身のエンジニアを多数見てきたし、活躍している人も多いです。
論理的思考は必要ですが、数をこなすうちに慣れます。



文系出身の方はコミュニケーション能力が高い傾向がある気がします。
会社だと、チームで開発を行うのでコミュニケーション能力は大事!
数学が得意である必要は無いけど、数学が好きだったという人はプログラミングと相性が良いといった関係だと思います。
まとめ
プログラミングと数学が似ていると思う点4つを紹介しました。
タップして読みたいところに飛べます
数学において、このような点が好きだったという方は、プログラミングをやってみると楽しいと思いますよ!
以上、参考になりますように。





