Displaying Source Code(s)
|
|
--------------------------------------------------------------------------------
Circle Through Three Points
--------------------------------------------------------------------------------
Description : This a program that given the Cartesian
coordinates of three points on a plane, will find the equation
of the circle through them all. Through this program u can
create a equation.
#include <stdio.h>
#include <math.h>
#include <conio.h>
int main()
{
clrscr();
double f,g,m,x1,x2,x3,y1,y2,y3;
double c,d,h,e,k,r,s;
for(;;)
{
if(scanf("%lf %lf %lf %lf %lf
%lf",&x1,&y1,&x2,&y2,&x3,&y3)==EOF)
//checking for input
break;
f = x3*x3-x3*x2-x1*x3+x1*x2+y3*y3-y3*y2-y1*y3+y1*y2; //formula
g = x3*y1-x3*y2+x1*y2-x1*y3+x2*y3-x2*y1;
if(g==0)
m = 0;
else
m = (f/g);
c = (m*y2)-x2-x1-(m*y1); //formula
d = (m*x1)-y1-y2-(x2*m);
e = (x1*x2)+(y1*y2)-(m*x1*y2)+(m*x2*y1);
h = (c/2); //formula
k = (d/2);
s = (((h)*(h))+((k)*(k))-e);
r = pow(s,.5);
printf("(x");
if(h>=0)
printf(" + ");
else if(h<0)
printf(" - ");
if(h<0)
h=-h;
printf("%.3lf)^2",(h));
printf(" + ");
printf("(y");
if(k>=0)
printf(" + ");
else if(k<0)
printf(" - ");
if(k<0)
k=-k;
printf("%.3lf)^2 = %.3lf^2",(k),r);
printf("<BR>);
printf("x^2 + y^2");
if(c>=0) printf(" + ");
else if(c<0) printf(" - ");
if(c<0) c=-c;
printf("%.3lfx",c);
if(d>=0) printf(" + ");
else if(d<0) printf(" - ");
if(d<0) d=-d;
printf("%.3lfy",d);
if(e>=0) printf(" + ");
else if(e<0) printf(" - ");
if(e<0) e=-e;
printf("%.3lf = 0",e);
printf("
<BR>);
}
getch();
return 0;
}
|
|
|