天花乱坠 多边形
作者:互联网
这道题目关于多边形的角度的一些性质的挖掘!
题目描述
某年某月某日,琪仔get到了一款十分精美的天花板图案的设计图纸。 图案的框架最初是一个正n边形,之后以它的n条边的中点为顶点构成一个新的正n变形。如此重复多次后,就能得到天花板图案的框架了。 不要问重复多少次,问就是无限重复。。。 给定n,求生成的图案的框架所有边的长度总和(最初正n边形每条边的边长均为100)。输入描述:
多组测试(不多于100组),每组一行一个整数n( 2 < n <= 100),表示正多边形的边数。
输出描述:
对于每组测试,输出一行一个结果,四舍五入保留两位小数。(请用较为简洁的计算方式,以减少误差)示例1
输入
3 4 50
输出
600.00 1365.69 2533863.09
数学结论:设一个正n边形的周长为C1=C,若以它的n条边的中点为顶点构造一个新的正n边形,则C2=C1*cos(pi/n),以此类推:Cn+1=Cn*cos(pi/n).
代码实现:
1 #include<bits/stdc++.h> 2 using namespace std; 3 const double pi=acos(-1);//圆周率! 4 5 int main() 6 { 7 double n; 8 while(cin>>n) 9 { 10 double tot=100.0*n,ans=100.0*n; 11 double du=pi/n; 12 while(tot>=1e-10) 13 { 14 tot*=cos(du); 15 ans+=tot; 16 } 17 printf("%.2f\n",ans);//简短精悍的输出 18 } 19 return 0; 20 }
标签:cos,多边形,天花乱坠,边形,tot,double,条边,pi 来源: https://www.cnblogs.com/dragondragon/p/11190724.html