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


weber40201@gmail.com (Wade Cheng)

學校 : 國立臺中科技大學
編號 : 175401
來源 : [125.229.217.41]
最後登入時間 :
2023-03-29 00:04:09
a006. 一元二次方程式 | From: [114.33.163.121] | 發表日期 : 2022-09-11 22:58

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

#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;
}

 
ZeroJudge Forum