×
解除綁定,重新設定系統帳號的密碼
您的系統帳號 ID:
您的系統帳號:
您的帳號暱稱:
設定新密碼:
設定新密碼:
×
請輸入要加入的「課程代碼」
請向開設課程的使用者索取「課程代碼」
分類題庫
解題動態
排行榜
討論區
競賽區
登入
註冊
發表新討論
#2151: 最後一個測資一直錯,麻煩幫看一下
oscarlin2007
(小林)
學校:
國立新竹高級中學
編號:
7184
×
傳送站內訊息
傳給:
主題:
內容:
來源:
[140.126.196.44]
註冊時間:
2009-07-09 10:34:16
最後登入時間:
2009-07-09 10:34:33
a006.
一元二次方程式
| From: [140.126.196.44] | 發表日期: 2009-07-09 11:52
#include<iostream>
#include<cmath>
using namespace std;
int main(){
double a,b,c;
while(cin>>a>>b>>c){
double ansa,ansb;
if(a==0 && b==0 && c==0){
cout<<"No real root"<<endl;}
else if(a==0 && b!=0 && c!=0){
cout<<"Two same roots x="<<-c/b<<endl;}
else if(b*b-4*a*c==0){
ansa=-b/2*a;
ansb=-b/2*a;
if(ansa!=ansb){
continue;}
if(ansa==-0){
ansa==0;}
cout<<"Two same roots x="<<ansa<<endl;}
else if(b*b-4*a*c>0){
int temp;
temp=sqrt(b*b-4*a*c);
ansa=(-b+temp)/2*a;
ansb=(-b-temp)/2*a;
if(ansa<ansb){
swap(ansa,ansb);}
if(ansa==-0){
ansa==0;}
if(ansb==-0){
ansb==0;}
cout<<"Two different roots x1="<<ansa<<" , x2="<<ansb<<endl;}
else if(b*b-4*a*c<0){
cout<<"No real root"<<endl;}
}
return 0;
}