📄 3371759_ac_0ms_316k.cc
字号:
#include <stdio.h>
#include <math.h>
int main()
{
double ax, ay, bx, by, cx, cy;
double a1, a2, b1, b2, c1, c2;
double dx, dy, ex, ey, x, y, r;
double Ax, Ay, Ar;
while (scanf("%lf%lf%lf%lf%lf%lf", &ax, &ay, &bx, &by, &cx, &cy) == 6)
{
dx = (ax + cx) / 2.0; dy = (ay + cy) / 2.0;
ex = (bx + cx) / 2.0; ey = (by + cy) / 2.0;
a1 = cx - ax; b1 = cy - ay; c1 = dx * a1 + dy * b1;
a2 = cx - bx; b2 = cy - by; c2 = ex * a2 + ey * b2;
x = (c1 * b2 - c2 * b1) / (a1 * b2 - a2 * b1);
y = (c1 * a2 - c2 * a1) / (b1 * a2 - b2 * a1);
r = hypot(x - ax, y - ay);
Ax = x * 2.0;
Ay = y * 2.0;
Ar = x * x + y * y - r * r;
printf("(x ");
x > 0 ? printf("-") : (printf("+"), x *= -1.0);
printf(" %.3lf)^2 + (y ", x);
y > 0 ? printf("-") : (printf("+"), y *= -1.0);
printf(" %.3lf)^2 = %.3lf^2\n", y, r);
printf("x^2 + y^2 ");
Ax > 0 ? printf("-") : (printf("+"), Ax *= -1.0);
printf(" %.3lfx ", Ax);
Ay > 0 ? printf("-") : (printf("+"), Ay *= -1.0);
printf(" %.3lfy ", Ay);
Ar > 0 ? printf("+") : (printf("-"), Ar *= -1.0);
printf(" %.3lf = 0\n\n", Ar);
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -