一元二次方程

Posted 萌新上路

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一元二次方程相关的知识,希望对你有一定的参考价值。

问题描述

求一元二次方程ax2+bx+c=0(a≠0)的根。如果a=0,输出:error;如果判别式小于0,输出:No real roots.;如果判别式等于0,输出:x1=x2=xxxxxx;如果判别式大于0,输出:x1=xxxxxx,x2=xxxxxx。

输入格式三个用空格分隔的双精度数输出格式按上述要求输出根或error等样例输入1 3 1样例输出x1=-0.381966,x2=-2.618034提示

输入:1 2 1;输出:x1=x2=-1.000000
输入:1 1 1;输出:No real roots.
输入:0 1 1;输出:error

 

 
#include <stdio.h>  
#include <iostream>  
#include <math.h>  
#include <string.h> 
#define d 1e-7  
using namespace std;  

int main()  
{  
    double a,b,c;
    scanf("%lf %lf %lf",&a,&b,&c);
    double k,x1,x2;
    k = (b*b - 4.0*a*c);
    if(a==0)
        printf("error");
    else
    {
        if(k > 0 )
        {
            x1 = (-b + sqrt(k))/(2.0*a);
            x2 = (-b - sqrt(k))/(2.0*a);
            if(x1<x2)    printf("x1=%lf,x2=%lf",x2,x1);
            else        printf("x1=%lf,x2=%lf",x1,x2);
        }
        else if(k==0)
        {
            x1 = -b/(2.0*a);
            printf("x1=x2=%lf",x1);
        }
        else
            printf("No real roots.");
    }
    return 0;
}          

 

以上是关于一元二次方程的主要内容,如果未能解决你的问题,请参考以下文章

多个请求是多线程吗

python从原始代码(matplotlib)到加图形界面(tkinter),最后到制作软件(一元二次方程软件)(如何做一个python软件)

微信小程序代码片段

Python实现3行代码解简单的一元一次方程

VSCode自定义代码片段——CSS选择器

谷歌浏览器调试jsp 引入代码片段,如何调试代码片段中的js