欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【计算几何】求三角形外接圆的周长、面积公式

程序员文章站 2022-04-01 16:11:53
...

步骤公式:

  • 已知三角形三边长a、b、c

  • 外接圆半周长:p=a+b+c2p = {a + b + c\over2}

  • 外接圆面积:S=p(pa)(pb)(pc)S= \sqrt{p(p - a)(p - b) (p - c)}

  • 外接圆直径:d=abc2Sd = {abc\over2S}

  • 外接圆半径:R=abc4SR={abc\over4S}

  • 外接圆周长:C=2πRC=2\pi R



例题: HDU 1374 - The Circumference of the Circle

题意: 给出三个点的坐标,求出这三个点所构成三角形的外接圆周长。

思路: 直接套用公式即可。


Code:

#include <iostream>
#include <iomanip>
#include <cmath>
#define pi 3.141592653589793
using namespace std;
int main() {
    double x1,y1,x2,y2,x3,y3;
    while(cin>>x1>>y1>>x2>>y2>>x3>>y3) {
        double x = sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
        double y = sqrt((x1-x3)*(x1-x3)+(y1-y3)*(y1-y3));
        double z = sqrt((x2-x3)*(x2-x3)+(y2-y3)*(y2-y3));
        double p = (x+y+z)/2.0;
        double s = sqrt(p*(p-x)*(p-y)*(p-z));
        double d = x*y*z/(2.0*s);
        cout<<fixed<<setprecision(2)<<pi*d<<endl;
    }
    return 0;
}