本日も、りけいのりからお届けします。
今回からは、新しいカテゴリーであるプログラミングについての記事を連載します。
皆さん,プログラミングと聞いたらどのようなイメージを持つでしょうか?
ホームページ作成,アプリ開発,,,,,
ですが,今回はプログラミングで計算する!ということをテーマにして記事を連載してきます!そのため,
まず,この連載は
・プログラミングに興味がるけど何から始めればよく分からない人
・プログラミングを用いた数値解析・画像処理をしてみたい人
・とても解けないような計算を解く必要がある人
・プログラミングの授業の課題中に壁にぶつかった人
を対象しています!
また.ここでは,学生向けの無料のVisual Studio Communityというソフトウェアを用いてプログラミングを行います!必要なものは,パソコンだけです!
プログラミングってそもそも何だろう?
昔,私は塾講師のアルバイトをしていました.その勤務先の塾では,私が勤務している間に,小学生を対象としたプログラミング教室が開講しました.小学生の習い事の一つが,プログラミングというのが当たり前になりつつあることに驚いたのを覚えています.
話を戻して,そもそものプログラミングとかプログラムについて考えていきたいと思います.参考文献の安田仁彦先生の『数値解析法』の記述を読んでいきましょう.
一連の計算を行うための計算手順をアルゴリズム(algorithm)という.このアルゴリズムに従ってコンピュータに計算を行わせるため,コンピュータが理解できる言語を用いてアルゴリズムを具体的に記述したものをプログラム(program)という.
次に,同じく参考文献の高橋麻奈先生の『やさしいC 第4版』の記述を読んでいきましょう.
私たちは毎日,コンピュータにインストールされたワープロ,表計算ソフトなど,さまざまな「プログラム」を使っています.ワープロのような「プログラム」を使うということは,
文字を表示し,書式を整え,印刷する
といった特定の「仕事」をコンピュータに指示し,処理させていると考えることもできます.
コンピュータは,さまざまな「仕事」を正確に,速く処理できる機械です.「プログラム」は,コンピュータに対してなんらかの「仕事」を指示するためのものです.
ということです.これは,プログラムに限った話ではないですが,タイプの違う別々の教科書で同じ事柄について書かれている部分を読み比べることは,より理解を深めることができる場合がありますよね.
話を戻しまして,プログラミングについて,個人的には,かなりゆるく,
「プログラム」は,コンピュータに対してなんらかの「仕事」を指示するためのもの
「プログラミング」はその「プログラム」を作ったり実行すること
というイメージで考えています.たぶん,最初はこのくらいのイメージで勉強を始めても大丈夫だと思います.
数値解析とは
ここでは,数値解析の例から,プログラミングを用いて計算を行う例を示します.
皆さん,以下の式を解いてみましょう!
中学校一年生の一次方程式の問題ですね.答えは次のようになりますね.
では,次の問題も見ていきましょう.
高校の三角方程式の問題です.加法定理を用いてとけそうですね.範囲をととると,こうなりますね.
では,最後にこの問題を見ていきましょう.,
,
,
が定まった時,
を求めます.
文字が多くて,ややこしいですが,これも一次方程式なのでうまい変形をしたら解けそうですよね.しかし,この方程式は解けません.ちなみに,この方程式は,ケプラーの法則から求められる式で,地球の軌道上の人工衛星の時間と場所を関係づける式です.
このように,未知数が,たった一つである一次方程式でさえ,場合によっては解くことができません.工学の分野では,このような簡単には解くことができない方程式や,積分の計算,数値の補間によく出会います.こんな時こそ,コンピュータでプログラミングを用いて計算して解きます!
おわりに
いかがでしたか?
実をいうと,この記事の執筆者もプログラムに詳し訳ではなく,専門は別分野で,プログラムを用いて計算する人間です!そのため,もしかしたら,用語の説明などでは,間違っていることがあるかもしれません.すみません....
しかし,ここ記事のテーマは,プログラミングで計算する!です.
なので,とにかく,使うということに重点を置いて説明していきたいと思います!
次回は,プログラミングの流れの説明とこの記事で使用するソフトウェアについて説明しいきます!
本日も、りけいのりがお届けしました。
参考文献
1)高橋麻奈『やさしいC 第4版』 風工舎
www.amazon.co.jp 2)安田仁彦 『数値解析基礎』 コロナ社