标题:c++不会,谁能帮我?
只看楼主
hzr
Rank: 2
等 级:论坛游民
威 望:3
帖 子:53
专家分:76
注 册:2017-8-24
结帖率:33.33%
 问题点数:0 回复次数:4 
c++不会,谁能帮我?
求一元二次方程
 
【题目描述】
利用公式x1 = (-b + sqrt(b*b-4*a*c))/(2*a),x2 = (-b - sqrt(b*b-4*a*c))/(2*a),求一元二次方程ax2+ bx + c =0的根,其中a不等于0。结果要求精确到小数点后5位。

【输入】
输入一行,包含三个浮点数a, b, c(它们之间以一个空格分开),分别表示方程ax2 + bx + c =0的系数。

【输出】
输出一行,表示方程的解。

若两个实根相等,则输出形式为:“x1=x2=...”;

若两个实根不等,在满足小者在前的原则,则输出形式为:“x1=...;x2 = ...“;

若无实根输出“No answer!”。

所有输出部分要求精确到小数点后5位,数字、符号之间没有空格。

【输入样例】
-15.97 19.69 12.02
【输出样例】
x1=-0.44781;x2=1.68075
搜索更多相关主题的帖子: c++ 方程 输入 一行 输出 
2017-09-02 21:21
hzr
Rank: 2
等 级:论坛游民
威 望:3
帖 子:53
专家分:76
注 册:2017-8-24
得分:0 
求解!!!!!!
2017-09-02 21:22
李维555
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2017-9-10
得分:0 
#include <iostream>
#include<math.h>
#include <iomanip>
using namespace std;

int main( void )
{
    float a,b,c;
    float x1,x2;
    cin>>a>>b>>c;

    if(a==0)
      return 0;

    if((b*b-4*a*c)<0)
    {
        cout<<"no answer"<<endl;
        return 0;
    }
    else{


    x1=(-b+sqrt(b*b-4*a*c))/(2*a);
    x2=(-b-sqrt(b*b-4*a*c))/(2*a);
    if(x1==x2){
        cout<<fixed<<setprecision(5)<<"x1=x2="<<x1<<endl;
    }
    else if(x1<x2)
    cout<<fixed<<setprecision(5)<<"x1="<<x1<<";x2="<<x2<<endl;

    else if(x1>x2)
    cout<<fixed<<setprecision(5)<<"x1="<<x2<<";x2="<<x1<<endl;
        }

}
2017-09-10 17:36
jinanman
Rank: 1
等 级:新手上路
帖 子:9
专家分:7
注 册:2017-9-20
得分:0 
教科书
2017-09-20 17:11
hzr
Rank: 2
等 级:论坛游民
威 望:3
帖 子:53
专家分:76
注 册:2017-8-24
得分:0 
只有70分
2017-10-01 21:44



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-480437-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.207286 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved