⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 exp2_1.cpp

📁 高等教育出版社出版的C++程序设计同步实验范例 希望对用这本教材得同学有点帮助
💻 CPP
字号:
// 范例:编程实现求解一元二次方程 的根。
/*[分析] 一元二次方程的求根公式是 ,按照这个公式,作为一个健壮的程序,
应根据方程系数的不同取值判断方程根的情况。如:
当a=0且b=0且c≠0时,方程无根;
当a=0且b≠0时,方程有一个根;
当a≠0且b≠0时,根据 判断方程根:
Δ>0,有两个不同实根;
Δ=0,有两个相同实根;
Δ<0,有两个不同复根。
*/

#include <iostream.h>
#include <math.h>
void main(){
	double a,b, c, delta, re, im;
    cout << "Please input a, b and c of the equation\n";
    cout << "a quadratic equation  a*x*x + b*x + c = 0\n";
	cin >> a >> b >> c;
    if (a == 0 && b == 0 && c == 0)
        cout << "Data input error !\n";
    else if (a == 0 && b == 0 && c != 0)
           cout << "unsolvable !\n";
         else if (a == 0 && b != 0)
                cout << "root is " << -c/b;
             else if (a != 0 && c == 0)
                   cout << "two roots are 0.0 and " << -b/a;
                  else{                     // a != 0 && c != 0
                  	re = -b / (2 * a);
                    delta = b * b - 4 * a * c;
	                if ( delta==0)  cout << "both roots are " << re;
                    else if ( delta > 0) {
                   		 	im = sqrt(delta) / (2.0 * a);
		           		 	cout << "two roots are " << (re + im) <<" and " << (re - im);
		           		}
		        		else {
		          			im = sqrt(abs(delta)) / (2.0 * a);
		     				cout << "roots are complex " << re <<"+"<<  im  <<"i" 
									<<" and " << re <<"-"<< im << 'i';
               			}
       			  }
	cout<<endl;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -