2011年10月25日

どうして、かけ算は足し算より先に計算しなければいけないのか?

算数の計算式を解く場合には、
足し算の前にかけ算を全部計算しておく必要があるんだけど、

なぜ、前に計算するのかっていう理由を説明出来る人は非常に少ないのです。

ずばり言うと、
かけ算は足し算の定義の上に覆い被さるように定義されているから。
かけ算は足し算を繰り返すという定義を持った計算ルールである

足し算を拡張したかけ算という概念は、
足し算より後に行ってしまうと、
その定義がスルーされてしまうという現象が起こります。
※このあたりC言語のマクロあたりに大きくつながってくる

ようは、テレビが前提にあるからビデオ録画が出来るのに、
そのテレビを消化してしまうと、ビデオが宙ぶらりんになってしまうという感じですかね。

ちなみに計算式の中には、
かけ算をさらに拡張した
累乗(3^n = 3*3*3・・・・)
階乗(3! = 3*2*1)
というものもあるんだけど、
かけ算を拡張しているからこそ、
かけ算より先に計算するというルールが定義されています
そのため
2 * 3^4 は 6^4とイコールにはなる事はありません

で、数学にはさらにそういう物を拡張したような物がいろいろとあるのですが、

やはり、
拡張された定義というのは、
拡張された定義であればあるほど、優先順位が高い為出来るだけ最初に計算する必要がある、
というのは変わらないようです。



そういう、歴史と拡張、
数学者が数学者の為に数学式をどんどん拡張していった結果、
このようなルールと計算する際の順番という定義が式の中に埋め込まれたと言えます。

※このあたり、足し算とかけ算だけ見ていると、よく分からないのかもしれませんが、
 数学界にあるいろんな計算ルールを眺めていると、
 一つのルールとしての計算順番があるのです


ついで
6+5*3
・かけ算は足し算の拡張型である為、5*3を先に計算する。
・6+15=21

6/2(1+2)
・括弧内から計算する為、1+2を計算する
・2(3)は一種の関数になっているっぽい(f(x)なんてのを大学受験で見たことがある人は多いと思う)
 (プログラミング言語で言うラムダ関数のようなもの)
 この2(3)は計算式ではなく、一つの値(関数)として定義される為、
 こちらを先に計算する
・=1




ちなみに、
この計算順番の定義は、
私が持ってる雑学とプログラミングや数学知識を前提に、
一番つじつまが合いそうな理由とルールを組み合わせて、
事実に対して理論づけた物になります。
これが確実に正しいのかは知らないので、
詳しい人がいたら教えてください。
posted by 迷い猫 at 00:27| Comment(0) | TrackBack(0) | 数学(神社) | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

この記事へのトラックバックURL
http://blog.seesaa.jp/tb/231958738
※言及リンクのないトラックバックは受信されません。

この記事へのトラックバック
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。