求解一元二次方程
需求如下:
代碼如下:
1 //求解一元二次方程
2 #include <iostream>
3 #include <cmath>
4 using namespace std; 5 int main() 6 { 7 float x1,x2,A,B,C,disc; 8 cin>>A>>B>>C; 9 disc=B*B-4*A*C; 10 if(disc<0) cout<<"No real root"<<endl; 11 else if(disc>0){ 12 x1=(-B+sqrt(disc))/(2*A);//這里要注意括號,不能少 13 x2=(-B-sqrt(disc))/(2*A); 14 cout<<x1<<" "<<x2<<endl; 15 } 16 else{ 17 x1=x2=(-B+sqrt(disc))/(2*A); 18 cout<<x1<<" "<<x2<<endl; 19 } 20 return 0; 21 }
分析與總結:
1、關鍵就是這個題整體的思路,三個部分,三個結果,依次划分,用到if,else if,else。
2、其次要注意一些括號的問題。
3、用到了庫函數,求根號的函數sqrt();
寫在最后:
哪里有不足或者錯誤的地方,歡迎小伙伴們進行指教,一起進步哦!