c-三角形三边求外接圆半径问题

问题描述

三角形三边求外接圆半径问题
给出任意一个三角形的三个边abc。

要求:求出这个三角形的外接圆半径

解决方案

初中几何知识。假设三角形ABC的AB=a AC=b BC=c,A坐标是00,B坐标是 a0 C坐标是方程 x^2 + y^2 = b 和 (x - a)^2 + y^2 = c的解(可能有零一个两个解,只有2个解的时候能构成三角形,随便取其中一个解,得到的x y是C的坐标)。有了ABC三个点的坐标,分别代入(x-a)^2+(x-b)^2=r^2,联立起来,正好求出abr,r就是你要的答案。

解决方案二:
画三个角的角平线出来你就会知道了

解决方案三:
修改下:初中几何知识。假设三角形ABC的AB=a AC=b BC=c,A坐标是00,B坐标是 a0 C坐标是方程 x^2 + y^2 = b^2 和 (x - a)^2 + y^2 = c^2的解(可能有零一个两个解,只有2个解的时候能构成三角形,随便取其中一个解,得到的x y是C的坐标)。有了ABC三个点的坐标,分别代入(x-a)^2+(x-b)^2=r^2,联立起来,正好求出abr,r就是你要的答案。

解决方案四:
先利用余弦定理:a^2=b^2+c^2-2bc·cosA
求出:cosA=(b^2+c^2-a^2)/2bc
在利用公式:sinA^2+cosA^2=1确定
sinA=根号(1-cosA^2)
=根号[(a^2+b^2+c^2)^2-2(a^4+b^4+c^4)]/(2bc)
然后代入 a/sinA=2R求出R.
R=2abc/根号[(a^2+b^2+c^2)^2-2(a^4+b^4+c^4)]

解决方案五:
这不是几何题么

首先要保证,能够构成一个三角形 条件是
(a + b > c && a + c > b && b + c > a)
其次求半径

1/2 sqrt(r * r - a*a)*a +1/2 sqrt(r*r -b*b)*b +1/2(sqrt(r*r -c*c)*c =Sabc
利用海伦公式 s =(a+b+c) /2
Sabc =sqrt(s (s-a)(s-b)*(s-c))
化简一下解方程即可。

时间: 2024-08-02 17:07:20

c-三角形三边求外接圆半径问题的相关文章

JAVA求两直线交点和三角形内外心的方法_java

一.求两直线交点 复制代码 代码如下: class Point {    double x;    double y;     public Point() {        this.x = 0;        this.y = 0;    }}class Line {    Point a;    Point b;     public Line() {        this.a = new Point();        this.b = new Point();    }    //求

求两直线交点和三角形内外心

一.求两直线交点 class Point { double x; double y; public Point() { this.x = 0; this.y = 0; } } class Line { Point a; Point b; public Line() { this.a = new Point(); this.b = new Point(); } //求两直线的交点,斜率相同的话res=u.a Point intersection(Line u,Line v){ Point res

《C语言程序设计》一1.4 案例学习——计算三角形的面积

1.4 案例学习--计算三角形的面积 本节应用结构化程序设计方法根据如下需求进行分析和设计: 根据公式area=计算三角形的面积,其中a.b.c为三角形的三边,s=(a+b+c)/2为三角形半周长.编写程序,用以上信息计算边长为3.4.5的三角形面积. 1.问题分析 这一步主要是确认我们对需求有一个完整的理解. 1)确定预期的输出.为了确定预期的输出,应该首先在需求中查找计算.打印等关键词,在上面的需求中,关键的一句话为"计算边长为3.4.5的三角形面积",这明确了输出项为三角形的面积

《C语言程序设计》一 2.1 案例引入——计算三角形的面积

2.1 案例引入--计算三角形的面积 程序prg1-3.c只能计算边长为3.4.5的三角形的面积,不具有通用性.修改该程序,使其可以计算任意三角形的面积. [例2-1] 输入三角形三边,计算三角形的面积. /程序名:prg2-1.c/ /功能:输入三角形的三边,计算三角形的面积/ #include<stdio.h> #include<math.h> int main() { float a,b,c,s,area; scanf("%f,%f,%f",&a,

已知两个点的坐标,求它们的距离,请问编程怎么实现?是windows phone

问题描述 已知两个点的坐标,求它们的距离,请问编程怎么实现?是windows phone 已知两个点的坐标,求它们的距离,请问编程怎么实现?是windows phone 解决方案 http://blog.163.com/gobby_1110/blog/static/29281715201271745123282/ 解决方案二: 套用数学求两个点的距离的数学公式有那么难吗 解决方案三: 把两个点想象到坐标轴上,点A和点B 如果X相等,则AB距离是Y相减 如果Y相等,则AB距离是X相减 如果X相等,

java基础-Java 语言,求大神,初学者Java

问题描述 Java 语言,求大神,初学者Java 打印如下图(三角形) * ** ****求大神,求大神,求大神........ 解决方案 和C语言的差不多,打印三角形 解决方案二: public class Test { /** * 打印三角形 * @param num 打印行数/ public static void printTri(int num){ for(int i=1;i<=num;i++){ for(int j=1;j<=num-i;j++){ System.out.print

C语言OJ项目参考(2963) 判断三角形

2963: 判断三角形 Description 娄月的妹妹刘月是个初中生,某天回来兴高采烈的回家告诉姐姐他学会了如何凭借三角形三边判断三角形的形状(设两条短边为啊a,b;长边为c,判断a*a+b*b和c*c的关系),于是娄月告诉刘月,给她三条边,她可以在一秒之内知道三角形是直角,钝角还是锐角三角形,当然,这么快只有编程才能做到.以下是娄月编写的程序,由于忘记了一些知识点,三个判断三角形的函数无法完成,于是 只能请聪明的你帮忙喽. #include <stdio.h> #define swap(

一种求凸多边形内部似最大圆的算法

文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.    背景          任意多边形内部一定有一个最大圆,但是如果我们将条件设定为"任意多边形"."最大圆",该算法将十分复杂.比如获取多边形内任意点进行膨胀.通过碰撞检测来进行判定,算法复杂且效率低下.        回到实际项目本身,需求为判断点是否落在规划的电子围栏内.观察电子围栏,多数是凸多边形.而我们之所以要求内部圆,是

JSP 二讲

教   学   活   动   首   页                  基    本    内    容  第 2 章 JSP 语法  教学目的与要求:通过本章的学习让学生了解SP 中的注释的使用方法:理JSP页面的基本结构:掌握变量和方法的声明方法,Java 程序片的使用,Java 表达式的使用,JSP指令标签和JSP动作标签的使用. 教学内容: 2.1 JSP 页面的基本结构 2.2 变量和方法的声明 2.3 Java 程序片 2.4 Java 表达式 2.5 JSP 中的注释 2.6