#include <iostream>
#include <math.h>
using namespace std;
int main()
{
int a,b,c,d,x1,x2;
while(cin>>a>>b>>c)
{
d=pow(b,2)-4*a*c;
x1=(-b+sqrt(d))/2*a;
x2=(-b-sqrt(d))/2*a;
if(d>0)
{
if(x1>x2)
cout<<"Two different roots x1="<<x1<<" , x2="<<x2<<endl;
if(x2>x1)
cout<<"Two different roots x1="<<x2<<" , x2="<<x1<<endl;
}
if(d<0)
cout<<"No real root"<<endl;
else if(x1==x2)
cout<<"Two same roots x="<<x1<<endl;
}
}
想請問程式哪裡出錯導致最後結果為NA(測試結果是AC)
測試的數據少,當然容易 AC
建議先別急著開平方 ( 先確認是否為平方數 ),不然會有誤差。