如何编程计算一元二次方程的根

Python020

如何编程计算一元二次方程的根,第1张

#include"stdio.h"

#include"math.h"

main()

{

float a,b,c,d[8]

char x,y

a=b=c=d[8]=0

printf("请输入a、b、c的值:\n")

scanf("%3f%3f%3f",&a,&b,&c)

d[0]=b*b-4*a*c

printf("%.3f",d[0])

if(a==0)

printf("该方程不是一元二次方程!!!")

else if(d[0]>0)

{

d[1]=(-b+sqrt(d[0]))/(2*a)

d[2]=(-b-sqrt(d[0]))/(2*a)

printf("该一元二次方程的解为:%.3f或%.3f\n",d[1],d[2])

}

else if(d[0]==0)

{

d[3]=-b/(2*a)

printf("该一元二次方程的解为:%.3f\n",d[3])

}

else

{

d[4]=-b/(2*a)

d[5]=sqrt(fabs(d[0]))/(2*a)

printf("该一元二次方程的解为:%.3f-%.3fi或%.3f-%.3fi\n",d[4],d[5],d[4],d[5])

}

}

一元二次方程求根公式: 当Δ=b^2-4ac≥0时,x=[-b±(b^2-4ac)^(1/2)]/2a 当Δ=b^2-4ac<0时,x={-b±[(4ac-b^2)^(1/2)]i}/2a(i是虚数单位)。

非实复数α是实系数n次方程f(x)=0的根,则其共轭复数α*也是方程f(x)=0的根,且α与α*的重数相同,则称α与α*是该方程的一对共轭复(虚)根。共轭复根经常出现于一元二次方程中,若用公式法解得根的判别式小于零,则该方程的根为一对共轭复根。

性质一

n次单位根的模为1,即|εk|=1

性质二

两个n次单位根εj与εk 的乘积还是一个n次单位根,且εjεk =εj+k

推论1:εj-1=ε-j

推论2:

εkm=εmk

推论3:

若k除以n的余数为r,则εk=εr

注:它说明εk等价于r=0