#32072: C++易懂簡單解題


weber40201@gmail.com (Wade Cheng)


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

#include <iostream>
#include <math.h>

using namespace std;

int main()
{
    int s1,s2,s3,sqrtsum,sum1,sum2;
    
    while(cin>>s1>>s2>>s3)
    {
        sqrtsum = pow(s2,2) - (4*s1*s3); //求請幾個解 用IF判斷
        
        if(sqrtsum > 0)
        {
            sum1 = (-s2+sqrt(sqrtsum)) / (2*s1);
            sum2 = (-s2-sqrt(sqrtsum)) / (2*s1); 
            cout<<"Two different roots x1="<<sum1<<" , x2="<<sum2<<endl;
        }
        else if(sqrtsum == 0) 
        {
            sum1 = (-s2+sqrt(sqrtsum)) / (2*s1); //加減都可反正答案一樣 
            cout<<"Two same roots x="<<sum1<<endl;
        }
        else
        {
            cout<<"No real root"<<endl;
        }    
    }
    return 0;
}