- 締切済み
3次方程式の解き方
3次方程式をどんな解き方で解くのが効率的ですか?
- みんなの回答 (6)
- 専門家の回答
みんなの回答
- staratras
- ベストアンサー率41% (1504/3660)
No.4&5です。一般の場合の3次方程式の効率的な解法について、少し補足します。 3次方程式、x^3+ax^2+bx+c=0…(1)が与えられたとします。(x^3の係数が1でなければその係数で割ります)このままでは計算が面倒なので、x=X-a/3 となるXで置き換えると、X^3+pX+q=0 …(2)という形式にできます。ここでp=b-(1/3)a^2,q=c-(1/3)ab+(2/27)a^3 です。 次に(2)の判別式D=-4p^3-27q^2 を計算します。 D>0 のとき 相異なる3つの実数解 D<0 のとき ただ一つの実数解と、互いに共役な2つの複素数解 D=0 のとき 3つとも実数解だがこのうち少なくとも2つは一致(重解) カルダノの公式を使えばどれも解を求められますが、厄介なのはD>0の場合で、実数解でありながら複素数(の立方根)で表されてしまうからです。これを「還元不能の場合」と言い、このときにはNo.4の三角関数を用いる方法が役に立ちます。 なおNo.4ではあえて触れませんでしたが、あの解法が成り立つにはcos3θの絶対値が1を超えない範囲で 「x^3+px+q=0 をy^3-(3/4)y-(1/4)cos3θ=0に必ず変形できる」必要があります。 このことはD>0の場合にはこの条件から証明できます。 (2)が解けたら、Xからxを求めれば(1)の解が得られます。
- staratras
- ベストアンサー率41% (1504/3660)
No.4です。三角関数を使った3次方程式の解法は、3つの実数解をもつ場合(還元不能の場合)に威力を発揮します。現代でのこの解法の利点は「方程式を解く機能がない関数電卓でも比較的容易に3つの詳しい数値解が得られる」ことです。 具体的に方程式「x^3-3x^2-x+1=0」を解いてみます。 まず2次の項を消すためにX=x-1 とし、x=X+1を方程式に代入すると X^3-4x-2=0, X^3=4x+2…(1)が得られます。(これを「立方完成」といいます) これを三角関数の3倍角の公式cos3α= 4(cosα)^3 -3cosαを変形した (cosα)^3=3/4cosα+1/4cos3α …(2)を念頭に 4=3a^2,2=a^2b …(3)とおいた式 X^3=3a^2x+a^2b を考え、 X=2acosα とおき(1)へ代入すると 8a^3(cosα)^3=6a^3cosα+a^2b 8a^3で両辺を割って (cosα)^3=3/4cosα+b/8a (2)と見比べて cos3α=b/2a だからα=(1/3)arccos(b/2a) X=2acos((1/3)arccos(b/2a)) (3)を解くとa=(2/3)√3、b=3/2 だから cos3α=(3/2)/{(2/3)√3}=(3/8)√3≒0.649519052 ∴α=1/3arccos(0.649519052) ≒1/3(49.49464967°)=16.49821656(°) なおこの解のほかα+120°、α+240°も解なので これらに対応するXの値を全部求めると X≒2(2/3)√3cos(16.49821656°)≒2.214319743 X≒2(2/3)√3cos(136.49821656°)≒-1.675130871 X≒2(2/3)√3cos(256.49821656°)≒-0.5391888727 もとの方程式の解はこれに1を加えた値なので、 x≒3.214319743、x≒-0.675130871、x≒0.4608111273 この3つの実数解は「方程式が解ける関数電卓」で検算した解とも一致しました。
- staratras
- ベストアンサー率41% (1504/3660)
パソコンの計算ソフト(または計算サイト)や、3次方程式を解ける関数電卓を使ってよいなら、容易に3つの解が得られます。 手計算で厳密に解を求めたい場合にはいくつか方法がありますが、カルダノの公式を使っても2次方程式と比べるとかなり面倒です。近似的な数値解であればニュートン法などが使えますし、また以下に示す2次方程式で近似する方法もあります。大まかに解の見当をつけるのに使えます。 具体的に、3次方程式x^3+3x^2+x+1=0 …(1)を解いてみます。 f(X)=x^3+3x^2+x+1 とすると f(-3)=-2<0,f(-2)=3>0 だから(1)はこの間に解をもつ。 この解をx=-3+yとおき(0<y<1)(1)へ代入して整理すると y^3-6y^2+10y-2=0 ここで0<y<1より3次の項を無視すると -6y^2+10y-2=0 ∴3y^2-5y+1=0 y=(5±√13)/6,0<y<1 より負号の場合y≒0.23 ∴x≒-3+0.23=-2.77 (1)の残りの解をβ,γとすると解と係数の関係から -2.77+β+γ=-3、-2.77βγ=1 ∴ β+γ=-0.23、βγ=-0.36だから β,γは2次方程式z^2+0.23z+0.36=0 の解、これを解いて z=x=≒(-0.23±1.18i)/2=-0.115±0.59i 答え x≒-2.77,x≒-0.115±0.59i 3次方程式が解ける関数電卓で検算すると x=-2.769292354… x=-0.1153538229±0.589742805i… となりました。 なお昔の数学の本を読むと、計算尺を使う方法や三角関数を使う方法などさまざまなやり方で3次方程式を解く方法が書かれています。こうした工夫はコンピューター時代になってあまり取り上げられませんが、なかなか興味深いものがあります。
- SI299792
- ベストアンサー率47% (780/1631)
確実に求めるなら、カルダノ法です。複素数の解をだせます。 https://mathtrain.jp/cardano しかし、とても手計算ではできません。 昔、プログラムを作ったことがあります。 必要なら、Excel VBA に直して載せます。
- 178-tall
- ベストアンサー率43% (762/1732)
>3次方程式をどんな解き方で解くのが効率的ですか? 実務などで実係数 3 次方程式を「効率的」に解くのなら、ニュートン法と組み合わせた求根アルゴリズムでまず 1 つの実根を求め、残りの実係数 2 次方程式を解く … という手てすかネ。
- N5200model05
- ベストアンサー率39% (100/255)
Mathematica にかける、ですかね。