im getting PE on this code
Code: Select all
#include<stdio.h>
#include<math.h>
int main(void)
{
float x[3],y[3];
float mid1X,mid2X,mid1Y,mid2Y,m1,m2,c1,c2,temp;
float h,k,r,c,d,e;
while(scanf("%f%f%f%f%f%f",&x[0],&y[0],&x[1],&y[1],&x[2],&y[2])==6)
{
/* while(!feof(in))
{ for(l=0;l<3;l++)
fscanf(in,"%f%f",&x[l],&y[l]); */
mid1X=(x[0]+x[1])/2;
mid1Y=(y[0]+y[1])/2;
m1=-(x[0]-x[1])/(y[0]-y[1]);
mid2X=(x[1]+x[2])/2;
mid2Y=(y[1]+y[2])/2;
m2=-(x[1]-x[2])/(y[1]-y[2]);
c1=mid1Y-(m1*mid1X);
c2=mid2Y-(m2*mid2X);
h=(c2-c1)/(m1-m2);
k=(m1*h)+c1;
temp=pow((x[0]-h),2)+pow((y[0]-k),2);
r=sqrt(temp);
e=pow(h,2)+pow(k,2)-temp;
d=-2*k;
c=-2*h;
if(h<0)
printf("(x + %.3f)^2 + ",-h);
else
printf("(x - %.3f)^2 + ",h);
if(k<0)
printf("(y + %.3f)^2 = ",-k);
else
printf("(y - %.3f)^2 = ",k);
printf("%.3f^2\n",r);
printf("x^2 + y^2 ");
if(c<0)
printf("- %.3fx ",-c);
else if(c>0)
printf("+ %.3fx ",c);
else
printf("- 0.000x ");
if(d<0)
printf("- %.3fy ",-d);
else if(d>0)
printf("+ %.3fy ",d);
else
printf("- 0.000y ");
if(e<0)
printf("- %.3f = 0\n",-e);
else
printf("+ %.3f = 0\n",e);
printf("\n");
}
return 0;
}
im printing -0.000 if theres any...
tried bothe +0.000 nad -0.000 still getting PE....plz help..