编程求解一元二次方程 方程中的实数根,其系数a、b、c从键盘输入

编程求解一元二次方程 方程中的实数根,其系数a、b、c从键盘输入

import math
a = float(input("请输入a的值:"))
b = float(input("请输入b的值:"))
c = float(input("请输入c的值:"))
if a != 0:
    delta = b**2-4*a*c
    if delta < 0:
        print("无根")
    elif delta == 0:
        s = -b/(2*a)
        print("x=",s)
    else :
        root = math.sqrt(delta)
        x1 = (-b+root)/(2*a)
        x2 = (-b-root)/(2*a)
        print("x1=",x1,"\t","x2=",x2)


完整代码如下,忘采纳

import math
print("请输入 a b c 用空格隔开 :")
a,b,c=map(int,input().split())

if a != 0:
    delta = b**2-4*a*c
    if delta > 0:
        print("方程有两个不相等的实数根 : ", (-b + math.sqrt(delta)) / (2*a) , " , " , (-b - math.sqrt(delta)) / (2*a) )
    elif delta == 0:
        print("方程有一个实数根 : ", -b / (2*a))
    else :
        print("方程没有一个实数根")
else :
    print("这个方程是一元方程")
#include <stdio.h>
#include <math.h>

int main(){
    double a,b,c;
    printf("请依次输入a b c用空格隔开");
    scanf("%lf%lf%lf",&a,&b,&c);
    double delt = b * b - 4*a*c;
    if( delt > 0 ){
        printf("方程有两个不相等的实数根 : %g , %g",(-b + sqrt(delt)) / (2 * a) ,(-b - sqrt(delt)) / (2 * a) );
    } else if( delt == 0 ){
        printf("方程有一个实数根 : %g  ",(-b + sqrt(delt)) / (2 * a) );
    } else {
        printf("方程没有实数根");
    }
}