A4139. 【条件】【提高】求一元二次方程的根
编程题
普及/提高-
知识点
题目描述
利用公式 $x_{1} = (-b + \sqrt{(b*b-4*a*c)}$ $)/(2*a), x_{1} = (-b - \sqrt{(b*b-4*a*c)}$ $)/(2*a)$ 求一元二次方程 $ax^{2}+ bx + c =0$ 的根,其中 $a$ 不等于 $0$。
输入格式
输入一行,包含三个浮点数 $a, b, c$(它们之间以一个空格分开),分别表示方程 $ax^{2} + bx + c =0$ 的系数。
输出格式
输出一行,表示方程的解。
若 $b^{2} = 4 * a * c$,则两个实根相等,则输出形式为:$x_{1}=x_{2}=...$。
若 $b^{2} > 4 * a * c$,则两个实根不等,则输出形式为:$x_{1}=...;x_{2} = ...$,其中 $x_{1}>x_{2}$。
若 $b^{2} < 4 * a * c$,则有两个虚根,则输出:$x_{1}=$实部+虚部 $i$; $x_{2}=$实部-虚部 $i$,即 $x_{1}$ 的虚部系数大于等于 $x_{2}$ 的虚部系数,实部为 $0$ 时不可省略。实部 $= -b / (2\times a)$, 虚部 $= \sqrt{(4*a*c-b*b)} / (2*a)$
所有实数部分要求精确到小数点后 $5$ 位。
若 $b^{2} = 4 * a * c$,则两个实根相等,则输出形式为:$x_{1}=x_{2}=...$。
若 $b^{2} > 4 * a * c$,则两个实根不等,则输出形式为:$x_{1}=...;x_{2} = ...$,其中 $x_{1}>x_{2}$。
若 $b^{2} < 4 * a * c$,则有两个虚根,则输出:$x_{1}=$实部+虚部 $i$; $x_{2}=$实部-虚部 $i$,即 $x_{1}$ 的虚部系数大于等于 $x_{2}$ 的虚部系数,实部为 $0$ 时不可省略。实部 $= -b / (2\times a)$, 虚部 $= \sqrt{(4*a*c-b*b)} / (2*a)$
所有实数部分要求精确到小数点后 $5$ 位。
输入输出样例
输入 #1
1 0 1
输出 #1
x1=0.00000+1.00000i;x2=0.00000-1.00000i
说明/提示
样例输入1
1.0 2.0 8.0
样例输入2
样例输出1
$x_{1}$=-1.00000+2.64575i;$x_{2}$=-1.00000-2.64575i
样例输出2
$x_{1}$=0.00000+1.00000i;$x_{2}$=0.00000-1.00000i
1.0 2.0 8.0
样例输入2
样例输出1
$x_{1}$=-1.00000+2.64575i;$x_{2}$=-1.00000-2.64575i
样例输出2
$x_{1}$=0.00000+1.00000i;$x_{2}$=0.00000-1.00000i