一元三次方程的解法次方程求根公式,python求一元三次方程的根
传统指甲油
立方厘米
(同groundcontrolcenter)地面控制中心立方。c -lm
多重根判别式3360 delta1=b ^2- 3传统指甲油a传统指甲油c;=b传统指甲油c-9传统指甲油a传统指甲油d;delta3=c^2-3传统指甲油b传统指甲油d
thetotaldiscriminantisdelta=delta2^2- 4传统指甲油增量一传统指甲油德尔塔3。
当增量1=增量2=0时,生津公式(1) : X1=X2=X3=-b/(3) 3传统指甲油a(=-c/b=-3d/c)。
当delta=B^2-4传统指甲油a传统指甲油C0,xqdfj:
x2=(-2传统指甲油by1^(1/3 y2^ 1/3)/6传统指甲油)3^ 1/2)传统指甲油(y1^ )1/3)-y2^ )1/3)/6
x3=(-2传统指甲油by1^(1/3) y2^ )1/3)/) 6传统指甲油)-3^ 1/2)传统指甲油(y1^(1/3)-y2^ )1/3
当delta=B^2-4AC=0,Shengjin公式3:
X1=-b/a强自行车X2=X3=-K/2,K=德尔塔2/德尔塔1,(A0)。
当delta=B^2-4AC0,Shengjin公式4:
x1=(-B-2传统指甲油sqrt(增量1)传统指甲油cos(/3))))传统指甲油a);
x2=(-bsqrt(3(Delta1)传统指甲油(cos)/3(sqrt)3)传统指甲油sin)/3)))3传统指甲油a ) 3
x3=(-bsqrt(Delta1)传统指甲油(cos ) Theta/3 )-sqrt(3)3(3)传统指甲油sin)/3))))3传统指甲油
=弧成本,t=(2ab-3ab )/) 2a^ )3/2))
(1) A=B=0,方程有A三重真正的根。
)2)当delta=b^2-4ac0,theequationhasarealrootandapairofconjugatecomplexroots。
)3)当delta=B^2-4AC=0,the方程有三个实根,其中一个有两个重根时。
(4)当delta=b^2-4ac0,theequationhasthreeunequalrealroots。
#包含
#包含
枚举根类型{UniReal,OneRPairComplex,TwoReal,UnequalReal } .
int main()。
const double PI=3.14159265359
双甲、乙、丙、丁;/传统指甲油三次方程系数传统指甲油/
双细节1、细节2、细节3、细节3;
双精度y1、Y2、支出1、支出2
双k,,t;
枚举根类型rt;
打印(输入系数立方方程式:ABCD .\ n);
scanf ( % lf % lf % lf % lf % lf )、a、b、c和d);
delta1=b传统指甲油b-3传统指甲油a传统指甲油c;
=b传统指甲油c-9传统指甲油a传统指甲油d;
=c传统指甲油碳-3传统指甲油b传统指甲油d;
三角洲=三角洲2传统指甲油三角洲2-4传统指甲油三角洲一传统指甲油三角洲3;
if(1==02==0)rt=UniReal;
else if(delta 0)rt=OneRPairComplex;
else if(delta==0)rt=t real;
否则if(0)rt=不平等;
开关(rt ) {
案例UniReal:
打印(theequationhasatriplerealroot .\ n);
printf(x1=x2=x3=%f(n),-c/b);
黑;
案例一飞机复杂:
printf(theequationhasrealrootandapairofconjugatecomplexroots .\ n ;
if(y10 ) expy1=pow ) y1,1.0/3.0;ELSEexpy1=(-1)传统指甲油pow ) Fabs(y1)、1.0/3.0);
if(y20 ) expy2=pow ) y2,1.0/3.0;ELSEexpy2=(-1)传统指甲油pow ) Fabs ) y2)、1.0/3.0);
printf(x1=%f(n)、(-b-expY1-expY2 )/) 3传统指甲油a);
printf(x2=%f%fi(n),(-2传统指甲油b支出一支出2 )/) 6传统指甲油a)、sqrt(3)3)传统指甲油(支出1-支出2 )/)
printf(x3=%f-%fi(n),-2传统指甲油b支出一支出2 )/) 6传统指甲油一),sqrt(3)3)传统指甲油(支出1-支出2 )/)
黑;
案例TwoReal:
printf(theequationhasthreerealroots,其中一个有两个双根. \ n );
k=K2/K1;
printf(x1=x2=%f(n),-K/2);
printf(x3=%f(n),-b/a强自行车);
黑;
情况真实:
打印(theequationhasthreeunequalrealroots .\ n);
T=(2.0传统指甲油增量一传统指甲油b-3.0传统指甲油a传统指甲油delta2)/) 2.0传统指甲油sqrt(增量一传统指甲油增量一传统指甲油
=ACOS(t;
printf(x1=%f(n),(b-2.0传统指甲油sqrt)增量1(传统指甲油cos(/3.0))(3.0传统指甲油a));
printf(x2=%f(n),(bsqrt(3) Delta1)传统指甲油(cos)/3.0(sqrt)3)传统指甲油sin(/3.0)))
printf(x3=%f(n),(bsqrt ) Delta1)传统指甲油(cos)/3.0)-sqrt(3)3)传统指甲油sin(/3.0))
黑;
()传统指甲油开关传统指甲油/
返回(0;
}
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。