本题目要求一元二次方程ax 2 +bx+c=0的根,结果保留2位小数。 输入格式: 输入在一行中给出3个浮点系数a、b、c,中间用空格分开。 输出格式: 根据系数情况,输出不同结果: 1)如果方程有两个不相等的实数根,则每行输出一个根,先大后小; 2)如果方程有两个不相等复数根,则每行按照格式“实部+虚部i”输出一个根,先输出虚部为正的,后输出虚部为负的; 3)如果方程只有一个根,则直接输出此根; 4)如果系数都为0,则输出"Zero Equation"; 5)如果a和b为0,c不为0,则输出"Not An Equation"。 输入样例1: 2.1 8.9 3.5 输出样例1: -0.44 -3.80 输入样例2: 1 2 3 输出样例2: -1.00+1.41i -1.00-1.41i 输入样例3: 0 2 4 输出样例3: -2.00 输入样例4: 0 0 0 输出样例4: Zero Equation 输入样例5: 0 0 1 输出样例5: Not An Equation 代码长度限制 16 KB 时间限制 400 ms 内存限制 64 MB C (gcc) 1
时间: 2023-05-19 13:02:33 浏览: 66
用Java编写程序,求一元二次方程ax²+bx+c=0的根(系数在程序中给定),并输出。
我可以回答你的问题。对于第一个问题,根据输入的系数a、b、c,可以使用公式求解一元二次方程的根。具体地,如果a不为0,则根据求根公式,可以得到两个根x1和x2,分别为:
x1 = (-b + sqrt(b^2 - 4ac)) / 2a
x2 = (-b - sqrt(b^2 - 4ac)) / 2a
如果b^2 - 4ac大于0,则方程有两个不相等的实数根,分别为x1和x2,先输出大的根,再输出小的根,保留2位小数。
如果b^2 - 4ac等于0,则方程只有一个根,为-x1/-2a,直接输出此根,保留2位小数。
如果b^2 - 4ac小于0,则方程有两个不相等复数根,分别为x1和x2,实部为-b/2a,虚部为sqrt(4ac - b^2)/2a,先输出虚部为正的根,再输出虚部为负的根,保留2位小数。
如果a和b都为0,c不为0,则方程无解,输出"Not An Equation"。
如果a、b、c都为0,则方程有无数解,输出"Zero Equation"。
下面是代码实现:
阅读全文