Ejercicio 1:

El objetivo de este ejercicio es escribir un programa que dados tres puntos (x1,y1), (x2,y2) y (x3,y3), calcule el centro y el radio de la circunferencia que pasa por ellos.

No debe preocuparse por los casos especiales en los que los puntos están repetidos o alineados. Trataremos estos casos en otros ejercicios.

Para resolver este problema, debemos solucionar un sistema de tres ecuaciones con tres incógnitas. El sistema dice que la distancia de cualquiera de los tres puntos al centro de la circunferencia es igual al radio de la circunferencia:

r^2 = (x1-x)^2 + (y1-y)^2
r^2 = (x2-x)^2 + (y2-y)^2
r^2 = (x3-x)^2 + (y3-y)^2
donde r es el radio de la circunferencia, y (x,y) es su centro.

La solución de este sistema de ecuaciones es:

y = (a*f-c*d)/(b*d-a*e)
x = y*b/a +c/a
r = sqrt((x1-x)^2 + (y1-y)^2)
donde a, b, c, d, e y f son variables auxiliares:

a = 2*(x2-x1)
b = 2*(y2-y1)
c = x1*x1 + y1*y1 - x2*x2 - y2*y2
d = 2*(x3-x1)
e = 2*(y3-y1)
f = x1*x1 + y1*y1 - x3*x3 - y3*y3
Entonces, simplemente hay que escribir un programa que implemente estas expresiones e imprima el valor de r, x y y.

Página actualizada el día 29 de Noviembre de 2005.