▲▽初心者のためのポケコン講座▽▲

 番外編 その1  ポケコンで連立方程式を解く!



先日、メールで『ポケコンで連立方程式を解く方法を教えてほしい』という内容の質問が届きました。
そこで、今回はポケコンで連立方程式を解く方法を説明します。
(今回はポケコン講座と言うよりも、数学教室みたいな感じになりますw)


☆まずは、自分の手で解いてみる

とりあえず一度自分の手で連立方程式を解いてみて解く手順を
考えてみたいと思います。

例えば、次のような方程式があるとします。

答えはx,y共に1になります。

では、詳しく見ていきます。

まず、4x+4y=8という方程式(下側)を変形して、『x=』の形にすると…
4x=8−4y
x=8/4−4y/4
x=2-y
・・・となります。

次に、変形した方程式をもう一方の方程式に代入します。
3*(2-y)+2y=5ですね。
これを整理していくと・・・
2*3-y*3+2y=5
6-3y+2y=5
-3y+2y=5-6
-y=-1
y=1

となり、yの値が出ます。

yの値が出たので、先ほどの『x=』の方程式に代入して・・・
x=2-1
x=1

・・・となります。

これで、連立方程式が解けます。


☆今度は文字に置き換えて解いてみる

上でやった連立方程式は実際の数字を使って解いているため
汎用性がまったくありません。
文字を使って連立方程式を解く公式のようなものを導き出しておけば
後から書くプログラムの量は非常に少なくなります。
(以下、便宜上『公式』と表現します)
プログラムの量が少ないということは、ポケコンの処理も軽くなるのです。

では、これから文字を使って連立方程式を解いていきます。

このように、すべて文字に置き換えてみました。

では、数字で解いたときと同じ手順で解いていきます。
まずは、『x=』の形に変形します。

分数になりますが、このように変形できます。

次に、もう一方の方程式代入します。

このようになります。

これを整理し簡単にして『y=』の形にしていきます。
まず、括弧をはずします。



定数項を右辺に移項します。


分母を払います。


左辺をまとめます。


右辺を左辺でわります。


これで、上の形の連立方程式を解くための公式が出ました。


☆プログラムを書いてみる

では、上の公式を利用したプログラムを書いてみます。

10 X=0:Y=0
’X,Yを初期化します。
20 INPUT "A1=";A1 ’A1を読み込む
30 INPUT "B1=";B1 ’B1を読み込む
40 INPUT "C1=";C1 ’C1を読み込む
50 INPUT "A2=";A2 ’A2を読み込む
60 INPUT "B2=";B2 ’B2を読み込む
70 INPUT "C2=";C2 ’C2を読み込む
80 Y=(C1*A2−A1*C2)/(−A1*B2+A2*B1) ’Yの値を出す
90 X=(C2/A2)−(B2/A2)*Y ’Xの値を出す
100 PRINT "X=";X,"Y=";Y ’X,Yの解を表示
110 END ’プログラム終了
このようなプログラムを書くことができると思います。
(右端の緑色で書いてある解説はプログラムに打ち込む必要はありません)
もし、続けて何問か解く場合は
『105 GOTO 10』
と1行付け足すと、プログラムが終了することなく繰り返されます。



お疲れ様でした。
今回は連立方程式ということで、
プログラムの解説よりも数学の解説のほうがメインになってしまいました。
いつも何気なく解いていた連立方程式ですが、こうやってっ考えてみるとなかなか面白いかもしれません。
ただし、この公式は人間には扱いにくいですね〜
人間には複雑で覚えにくいですから・・・

誤字・脱字・質問なんかがありましたら、メールやBBSでお知らせください。