比赛 |
普及组水题赛(语言题赛) |
评测结果 |
AAAAA |
题目名称 |
一元三次方程求解 |
最终得分 |
100 |
用户昵称 |
ztx |
运行时间 |
0.001 s |
代码语言 |
C++ |
内存使用 |
0.29 MiB |
提交时间 |
2014-10-14 18:04:29 |
显示代码纯文本
/*
author :hzoi_ztx
title :
ALG :
comment:
[2014 10 14 test]
*/
#include <cstdio>
double a , b , c , d , x , x1 , x2 , x3 ;
double f(double x) {
return ((a*x+b)*x+c)*x+d ;
}
int main() {
#define READ
#ifdef READ
freopen("3cfc.in" ,"r",stdin ) ;
freopen("3cfc.out","w",stdout) ;
#endif
scanf("%lf%lf%lf%lf", &a , &b , &c , &d ) ;
for (double i = -100 ; i <= 100 ; i ++ ) {
x1 = i ; x2 = i+1 ;
if (!f(x1)) printf("%.2f ", x1 ) ;
if ((f(x1))*(f(x2)) < 0) {
while (x2-x1 >= 0.001) {
x3 = (x2+x1)/2 ;
if ((f(x1))*(f(x3)) <= 0) x2 = x3 ;
else x1 = x3 ;
}
printf("%.2f ", x1 ) ;
}
}
return 0 ;
}