C++计算一元二次方程的跟

本文介绍了使用C++实现的二次方程求根算法,包括实数根、相等实数根和复数根的计算。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


#include<iostream.h//2-4

#include<math.h>

voidmain()

{double  a,  b, c,  d,  x1, x2,  rpip ;

   cout << "a, b, c = " ;    cin >> a >> b >> c ;

   if ( fabs( a )<= 1e-8)//<= 1e-8表示==0--浮点数的误差判断!!1

        cout << " It is notquadratic." <<endl ;

   else { d = b * b - 4 * a * c ;

             if ( fabs(d ) <= 1e-8 )

                  cout<< "It has two equal real roots: " << -b / ( 2*a )<<endl ;

             else if ( d > 1e-8 )

         { x1 = ( -b + sqrt( d ) ) / ( 2*a ) ;    x2 = ( -b - sqrt(d ) ) / ( 2*a ) ;

            cout <<"It has two distinct realroots: "<<x1<<" and "<<x2<<endl;

          }

     else  { rp= -b / ( 2*a ) ;   ip= sqrt(-d ) / ( 2*a ) ;

  cout << "It has two complex roots:" <<endl ;

  cout <<rp<< " + " << ip << "i"<<endl ;

  cout <<rp<< " - " << ip << "i"<<endl ;

              }

  }

}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值