本文主要是介绍NYOJ--1009 So Easy[Ⅰ],希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
So Easy[Ⅰ]
时间限制: 1000 ms | 内存限制: 65535 KB
难度:2
- 描述
-
给出任意一个三角形的三个边a,b,c。
要求:求出这个三角形的外接圆半径。
- 输入
- 输入数据有多组。
每行有三个数a,b,c(0<a,b,c<100) 输出 - 输出一行单独的一个数表示三角形的的外接圆半径,输出保留两位小数。(不要输出多余的信息) 样例输入
-
3 4 5
样例输出 -
2.50
- 输入数据有多组。
注意点
1,浮点数,
2,计算公式:
- 利用余弦定理先求各个角的角度:
cosA=(b^2+c^2-a^2)/(2bc)
利用(sinA)^2=1-(cosA)^2求正弦值,
再利用正弦定理求外接圆半径:
a/sinA=b/sinB=c/sinC=2R
R即为外接圆半径
#include<stdio.h>#include<math.h>int main(){double a,b,c,r,cosa;while(~scanf("%lf %lf %lf",&a,&b,&c)){cosa=(b*b+c*c-a*a)/(2*b*c);r=a/sqrt(1-cosa*cosa)/2.0;printf("%.2f\n",r);}return 0;}
这篇关于NYOJ--1009 So Easy[Ⅰ]的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!