2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

因数分解をやってみた

Posted at

はじめに

中学生で習う2次関数の因数分解を、中学生が考えるであろう考え方の手順で、プログラムで解く方法を考えてみました。最近流行りのプログラミング的思考で、数学の問題を解く、ってことでしょうか。こういう自由研究があってもいいかなと思います。

解きたい問題はa,b,c が与えられた時
$$ax^2 + bx+c = 0\tag{1}$$

$$(px+q)(rx+s) = 0 \tag{2}$$
の形に変形する時のp,q,r,sを求める問題です。ここでは中学生が解く時の考え方に近づけないので、解の公式は使いません。

アルゴリズム概要

a,b,c が与えられたとき、p,q,r,sを求めます。
(2)の式より
$$prx^2+(ps+qr)x+qs=0\tag{3}$$
(3) = (1) ですので、
$$a = pr\tag{4}$$$$b=(ps+qr)\tag{5}$$$$c=qs\tag{6}$$
となります。たぶん中学生が習うときは、aの約数としてのpとrを見つける。cの約数としてのqとsを見つける。たすき掛けで、ps+qrを計算してみて、bを一致するものを見つける。といった手順かと思います。この方法を愚直に実行してみます。下にフォローチャトで考え方の概要を示します。

因数分解.jpg

詳細説明

第1段階

a,b,c が与えらられたとき、もしaが負であった場合、(1)式の両辺に-1をかけて、x^2の係数を正にします。
$$ ax^2+bx+c=0$$$$a<0$$
$$ (-a)x^2-bx-c=0$$$$-a>0$$
-a を改めて a と置きます。
$$ ax^2-bx-c=0$$
と書くことにします。aがマイナスだったことは覚えておいて、答えが出た後に結果にマイナスを付けます。
$$-(px+q)(rx+s) = 0$$

第2段階

(4)式、(5)式より、aとcの約数を求めます。aは必ず正、cはその絶対値の約数を求めます。例えば、$$12x^2+24x+9=0\tag{7}$$とします。$$ a = 12 $$ であれば、約数は$$ 1,2,3,4,6,12 $$です。約数 の数はm=6、それぞれの約数を$$a_0, a_1, ..., a_{m-1}$$
と書いておきます。
$$ a = a_i a_{m-1-i}\tag{8}$$
と書けます。

次にcの約数を求めます。$$ c = 9$$ですので、約数の数は$$n=3$$約数は$$1,3,9$$となりまず。(8)式は、$$c=c_i c_{n-1-i} $$と書けます。i=1の時は$$c=c_1 c_1={c_1}^2$$ となります。

第3段階

a の約数がm個で、$$a_0, a_1,..., a_{m-1}$$ c の約数がn個で$$c_0, c_1,..., c_{n-1}$$です。c>0 であれば、(7)式は$$(a_ix+c_j)(a_{m-1-i}x+c_{n-1-j})\tag{9}$$もしくは$$(a_ix-c_j)(a_{m-1-i}x-c_{n-1-j})\tag{10}$$$$i=0,1,...m-1$$$$j=0,1,...n-1$$のいずれかと一致します。教科書にもあるたすきがけで一致するbの値を求めます。$$a_ic_{n-1-j})+c_ja_{m-1-i}$$$$-a_ic_{n-1-j}-c_ja_{m-1-i}$$

一方、c<0であれば、(7)式は$$(a_ix+c_j)(a_{m-1-i}x-c_{n-1-j})\tag{9}$$もしくは$$(a_ix-c_j)(a_{m-1-i}x+c_{n-1-j})\tag{10}$$$$i=0,1,...m-1$$$$j=0,1,...n-1$$のいずれかと一致します。こちらもたすきがけで一致するbの値を求めます。$$-a_ic_{n-1-j}+c_ja_{m-1-i}$$$$a_ic_{n-1-j}-c_ja_{m-1-i}$$

最後に

一致した、a,c の約数をp,q,r,sとします。もし、最初に与えられたaが負の場合にはp,q を負にします。(r,s を負にしても同じ)

中学生が教科書通りに答えを見つける方法はこんな手順かな、と思います。

プログラム

TBD

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?