- 资源限制
时间限制:1.0s 内存限制:256.0MB - 问题描述
编写一个求解一元二次方程的实数根的程序,方程的系数由用户在运行xh - 输入格式
输入一行三个整数分别为一元二次方程的三个系数,数据之间以空格隔开 - 输出格式
输出一行为方程的实数根(若两根不同 较大的在前 两根以空格隔开 若两根相同 输出一个 若无根 输出 NO ) - 样例输入
1 -5 4 - 样例输出
4 1 - 样例输入
1 -2 1 - 样例输出
1 - 样例输入
1 0 1 - 样例输出
NO
满分代码如下:
#include<iostream>
#include<cmath>
using namespace std;
int main(){
int a,b,c;
cin>>a>>b>>c;
if(b*b-4*a*c<0){
cout<<"NO"<<endl;
}else if(b*b-4*a*c==0){
cout<<-b/2/a<<endl;
}else{
cout<<(-b+sqrt(b*b-4*a*c))/2/a<<" "<<(-b-sqrt(b*b-4*a*c))/2/a<<endl;
}
return 0;
}