いぬおさんのおもしろ数学実験室

おいしい紅茶でも飲みながら数学、物理、工学、プログラミング、そして読書を楽しみましょう

プログラミングのすすめ。数学も勉強しましょう。

 今回はプログラミングのすすめ……ということで少し書いてみます。
 「ゲームをするのが好き」も、いいことでしょう。ゲームをやらない人より、人生を面白くする何かを少なくともひとつ余分に知っているわけだから。しかし音楽だって聴くだけでなく自分で演奏する、作る、とやってみれば全然違う面白さがあることが分かります。ゲーム(に限らずいろいろなソフト)を作るのは箱庭を作るみたいなもので、もうたまりません(あるいはドールハウスとかミニチュア家具とか)。「こういうメーターをつけたい」とか「こんな感じの爆発シーンにしよう」とか、「こういう操作でこうなるようにしたい」とか、もう何だってできます。大事なのは「楽しい!」という気持ちだけです。そうなると技術もついてくるからです(数学と同じだ!!)。
 そもそもプログラミングで何ができるのでしょうか? みなさんはスマホでアプリを使いますよね。どのアプリも誰かがプログラミングして作ったものです。あるいはパソコンでもメールを送ったりネットでサイトを眺めたりできますが、それにはアプリ(アプリケーション、ソフト)が必要です。インターネットエクスプローラワープロのワードも一太郎もみんなアプリケーションです。ゲームのファイナルファンタジーもです。ああいったものを作る作業がプログラミングです。↓これは前に書いたシューティングゲーム。こんなのも作れるようになります!

f:id:Inuosann:20190914230828p:plain

 数学は勉強しておきましょう。プログラミング情報誌で「プログラミングに数学は必要ありません」などと書いてあるのを見かけたことがあります。いや、そういう分野のソフトもたくさんあると思いますが、例えば3Dのソフトを書くのに空間の幾何学を知らないってのはムリでしょう……。「ライブラリ」といった、ある程度作業を肩代わりしてくれる仕組みもありますが、限度はあります。だからこういう方面に興味のある人は高校の数学くらいは勉強しておきましょう。早い話、数学を知らないと1+2+3+……+10000を計算するのに単純にループにしてしまうかも知れません(1に2を加え、3を加え、………と9999回繰り返してしまう。いい公式があるのに……)。今のパソコンは性能がいいですから、そういう効率の悪いプログラムでも済むことはあるでしょうが、特にゲームなど、スピード、タイミングが大事なプログラムではどうにもならなくなるケースも多いと思います。

 今はPythonが流行りですね。Pythonでも、その他の言語でもよいですから、何か始めてみてはいかがでしょうか?