C++课堂练习三

China☆狼群 提交于 2019-12-02 03:45:45

【本节内容】if...else...的使用

【练习题】解一元二次方程

【代码】

#include<iostream>
#include<cmath>
using namespace std;

int main() {
    double a, b, c;
    double delta;
    double x1, x2, x;
    cin >> a >> b >> c;
    if (a == 0) {
        if (b == 0) {
            cout <<"不构成方程"<< endl;
        }
        else {
            x = -c/b;
            cout << "一元一次方程的根为:x=" << x << endl;
        }
    }
    else {
        delta = b * b - 4.0 * a * c;
        if (delta >= 0) {
            delta = sqrt(delta);
            x1 = (-b + delta) / 2.0 / a;
            x2 = (-b - delta) / 2.0 / a;
            cout << "方程有实根,分别是:" << "x1=" << x1 << " x2=" << x2 << endl;
        }
        else {
            delta = sqrt(-delta);
            x1 = -b / 2.0 / a;
            x2 = delta / 2.0 / a;
            cout << "方程有复根,分别是:" << "x1=" << x1 << "+j" << x2 << "   x2=" << x1 << "-j" << x2 << endl;
        }
    }
    return 0;
}

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!