39.输入任意的a,b,c求一元二次方程ax*x+bx+c=0的根​

//从这个小题中可以熟悉头文件#include<cmath>的使用
//1、题目较为简单,只需运用判断语句即可
//2、注意,声明变量时要想到根的无理性,同时需注意函数结果的强制类型转换,sqrt只支持double和float类型

#include<iostream>
#include<cmath>//可以使用一些常用函数
using namespace std;

int main()
{
    int a,b,c,d;
    float x1,x2,x3;
    cout<<"please input a,b and c: "<<endl;
    cin>>a>>b>>c;


    d=b*b-4*a*c;
    if(d>0)
    {
        x1=((-b+(float)sqrt(d))/(2*a));//开根号函数的使用,注意强制类型转换
        x2=((-b-(float)sqrt(d))/(2*a));
        cout<<"方程有两个解:"<<endl;
        cout<<"x1="<<x1<<" x2="<<x2<<endl;
    }else if(d==0)
    {
        cout<<"方程有一个解:"<<endl;
        x3=((-b)/(2*a));
        cout<<"x="<<x3<<endl;
    }else
    {
        cout<<"方程没有解。"<<endl;
    }
    return 0;
}

 

posted on 2014-08-07 16:30  Ji_xiaowu  阅读(541)  评论(0编辑  收藏  举报

导航