比赛 普及组水题赛(语言题赛) 评测结果 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 ;
}