asdxcwqeas 2021-07-02 11:20 采纳率: 50%
浏览 18
已采纳

编写一个程序求方程chujieguo

编写一个程序求方程ax^2 bx c=0的根,用三个函数分别求出当b^2- 4ac大于0 ,小于0和等于0时的根。要求从主函数输入a,b,c的值并输出结果。

  • 写回答

1条回答 默认 最新

  • CSDN专家-link 2021-07-02 11:22
    关注

    可能会有几种情况,有两个、1个或者没有

    #include<iostream>
    using namespace std;
    void Cal1(double a, double b, double c)
    {
       cout << "该方程只有一个解"<<endl;
       cout <<"x=" << -a * 2 / b;
      
    }
    void Cal2(double a, double b, double c)
    {
      cout << "该方程有两个不同的实根" << endl;
      double x1,x2;
      double m = b * b - 4 * a * c;
      x1 = (-b + sqrt(m)) / (2 * a);
      x2 = (-b - sqrt(m)) / (2 * a);
      cout << "x1=" << x1 << "  x2=" << x2 ;
    }
    
    void Cal0(double a, double b, double c)
    {
        cout << "该方程有两个不同的复数根" << endl;
            if (b != 0)
            {
            
                double m1 = -b  / (2 * a);
                double m2 = sqrt(-m) / (2 * a);
                double n1 = -b  / (2 * a);
                double n2 = - sqrt(-m) / (2 * a);
                cout << "x1=" << m1 << (m2 > 0 ? "+" : "-") << fabs(m2) << "i" << "  x2=" << n1 << (n2 > 0 ? "+" : "-") << fabs(n2) << "i";
            }
            else
            {
                double m3 = sqrt(-m) / (2 * a);
                double n3 = -sqrt(-m) / (2 * a);
                cout << "x1=" << m3 << "i   x2=" << n3 << "i";
            }
    }
    
    int main()
    {
        double a, b, c;
        cout << "本程序用于求解一元二次方程(a*x_2+b*x+c=0的根." << endl << "请输入对应的系数:";
        cin >> a >> b >> c;
            double m = b * b - 4 * a * c;
            if(m==0)
          Cal1(a, b, c);
            else if(m>0)
              Cal2(a,b,c);
            else 
              Cal0(a,b,c);
    
        system("pause");
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 Oracle触发器记录修改前后的字段值
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题
  • ¥15 lna设计 源简并电感型共源放大器