题解 | #计算一元二次方程#

计算一元二次方程

http://www.nowcoder.com/practice/7da524bb452441b2af7e64545c38dc26

#include <math.h>

void calculation(double a, double b, double c)               //解方程函数
{
    double x1,x2;
    double x1i;          //虚部
    double delta;
    if(a)
    {
        delta = pow(b,2) - 4 * a * c;
        if(delta == 0)
        {
            x1 = x2 = (-b + sqrt(delta))/(2 * a);
            printf("x1=x2=%.2f\n",x1);
        }
        else if(delta > 0)
        {
            x1 = (-b - sqrt(delta))/(2 * a);
            x2 = (-b + sqrt(delta))/(2 * a);
            printf("x1=%.2f;x2=%.2f\n",x1,x2);
        }
        else
        {
            x1 = (-b)/(2 * a);
            x1i = sqrt(-delta)/(2 * a);
            printf("x1=%.2f-%.2fi;x2=%.2f+%.2fi\n",x1,x1i,x1,x1i);
        }
    }
    else
    {
        printf("Not quadratic equation\n");
    }
}

int main()
{
    double a,b,c;
    while(scanf("%lf %lf %lf",&a,&b,&c) != EOF)
    {
        calculation(a, b, c);
    }
    return 0;
}
全部评论

相关推荐

10-13 13:49
南京大学 财务
饿魔:笑死我了,你简直是个天才
点赞 评论 收藏
分享
09-24 18:30
已编辑
长春工业大学 产品经理
小肥罗:HR就是好人的缩写哈哈哈哈
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务