题意:
给出圆形中的一个n角星,求其面积
题解:
只需要求出黄色三角形的面积,首先可以求出三个角的值,正弦定理可以得到三边长度,面积公式求面积,最后乘上2n即可。
#include<stdio.h>
#include<math.h>
#define pi acos(-1.0)
int main()
{
double n,r;
while(~scanf("%lf%lf",&n,&r))
{
double A,B,C,a,c,s;//大写为角,小写为边
A=pi/(2.0*n);//最小的角
B=2*A;//次小的角
C=pi-A-B;//最大角
c=r;//最长边
a=c*sin(A)/sin(C);//正弦定理求出最短的边
s=0.5*a*r*sin(B);//黄色三角形的面积
printf("%.8f\n",2*n*s);
}
return 0;
}