二次方程式の解を求める。

現在3次以上の方程式の解を求めたいと思い、計算プログラムを組んでいます。solveという関数を用いた例があったため、これをもちいて2次方程式を解くプログラムを試作したのですが、欲しい解が数値解なのに対しシンボリック解で出力されており困っています。3次以上の方程式で数値解を得られるプログラムの書き方を教えていただきたいです。よろしくお願いします。

Réponses (1)

Atsushi Ueno
Atsushi Ueno le 13 Déc 2021

0 votes

3次以上でも3次未満でもvpasolve()で数値解(シンボリック値)が得られます。double()で数値になります。
syms x
eqn = 0.01847 * x^2 + 1.161 * x + 11.19 == 0;
S = solve(eqn)
S = 
S = vpasolve(eqn)
S = 
double(S)
ans = 2×1
-50.9730 -11.8856

1 commentaire

ryouya saitou
ryouya saitou le 14 Déc 2021
回答ありがとうございます。
二次方程式、三次方程式にて数値解を得ることが出来ました。
ありがとうございました。

Connectez-vous pour commenter.

Catégories

En savoir plus sur Symbolic Math Toolbox dans Centre d'aide et File Exchange

Produits

Version

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!