hdu 3876 A pupil’s problem(简单数学题)

点击打开链接

ps:解二次方程,wrong了一次,x1和x2木有判断大小!!!
   
    (1)若b^2-4ac<0,无实数根,有两个复数根:x1=[-b+i√(4ac-b^2)]/(2a) , x2=[-b-i√(4ac-b^2)]/(2a);
    (2)若b^2-4ac=0,有两个相等实根: x1=x2=-b/(2a);
    (3)若b^2-4ac>0,有两个不等实根: x1=[-b+√(b^2-4ac)]/(2a) ,x2=[-b-√(b^2-4ac)]/(2a) 。

#include<stdio.h>
#include<math.h>
int main()
{
	   int t;
	   int a,b,c;
	   double x1,x2,x,temp;
	   scanf("%d",&t);
	   while(t--)
	   {
		   scanf("%d%d%d",&a,&b,&c);
		   x=b*b-4*a*c;
		   if(x<0)
			   printf("NO\n");
		   else if(x==0)
		   {
			   x1=-1.0*b/(2*a);
			   printf("%.2f\n",x1);
		   }
		   else if(x>0)
		   {
			   x1=(-1.0*b-sqrt(x))/(2*a);
			   x2=(-1.0*b+sqrt(x))/(2*a);
			   if(x1>x2)//
			   {
				   temp=x1;x1=x2;x2=temp;
			   }
			   printf("%.2f %.2f\n",x1,x2);
		   }
	   }
	   return 0;
}


 

posted on 2012-07-30 14:22  Slege  阅读(134)  评论(0编辑  收藏  举报

导航