圆周率怎么算

懵懂先生 投稿文章圆周率怎么算已关闭评论94阅读模式

文章源自略懂百科-http://wswcn.cn/56800.html

下午在看一个算法的时候,突然看到了一个关于圆周率的问题,如果问你圆的周长怎么算,你肯定毫不犹豫是2πR,但是π是怎么算出来的呢?估计我们都没有想过,所以我们看很多算法的时候,其实只是给了我们一个公式,其实和不懂差不多不是很大。文章源自略懂百科-http://wswcn.cn/56800.html

我来调用下我薄弱的数学细胞,简单来看一下。把一个圆如果展开,得到的就是圆的周长,即一个非精确值3.1415926。文章源自略懂百科-http://wswcn.cn/56800.html

我们来推算一下,下面的这个六边形,如果圆心为中心,那么半径是和六边形的边长度是一样的。假设半径长度是1,则六边形的边也是1。文章源自略懂百科-http://wswcn.cn/56800.html

如果要求得圆周的长度,其实就是不断的把多边形扩张,一条边继续细分为两个角,即十二边形,如此类推,那么得到的结果就是一个极为精确的了。文章源自略懂百科-http://wswcn.cn/56800.html

本来想着公式应该推导起来不难,结果发现数学基础确实不扎实。文章源自略懂百科-http://wswcn.cn/56800.html

第一次推导是按照这种标记方式来的,貌似少了个条件,在左边各种推导,推导失败。文章源自略懂百科-http://wswcn.cn/56800.html

然后换了个思路,重新来推导,总算有了起色。文章源自略懂百科-http://wswcn.cn/56800.html

所以我们可以很明确的知道,如果扩张后的长度和原来的长度的关系是这样的。那么我们就可以借助程序来实现圆周率的算法了。文章源自略懂百科-http://wswcn.cn/56800.html

当然假设我们是不知道圆周率这个东西的,在知道了这个关联关系后,其实可以继续做一些推导。文章源自略懂百科-http://wswcn.cn/56800.html

比如六边形,假设边长为x,则6x的长度是一个最粗略的圆的周长,这样一来,周长就是近似于6,它和半径的关系就是6*1,按照2πR的公式来看,其实也可以理解为2R(即为直径),当然实际周长要比6大一点。也就是我们计算π的意义了。文章源自略懂百科-http://wswcn.cn/56800.html

所以只要切分的边足够多,那么得到的π的值也就更加精确。这个时候写程序的话,可以参考如下的方式,不断的切分。文章源自略懂百科-http://wswcn.cn/56800.html

import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请输入割圆次数:");
int n = scan.nextInt();
cut(n);
}static void cut(int n) {
double y = 1.0;
for (int i = 0; i <= n; i++) {
double π = 3 * Math.pow(2, i) * y;
System.out.println("第" + i + "次切割,为正" +
Math.round( 3 * Math.pow(2, i+1)) + "边形,圆周率π≈" + π);
y = Math.sqrt(2 - Math.sqrt(4 - y * y));
}
}
}文章源自略懂百科-http://wswcn.cn/56800.html

程序的输出如下:文章源自略懂百科-http://wswcn.cn/56800.html

请输入割圆次数:
15
第0次切割,为正6边形,圆周率π≈3.0
第1次切割,为正12边形,圆周率π≈3.1058285412302498
第2次切割,为正24边形,圆周率π≈3.132628613281237
第3次切割,为正48边形,圆周率π≈3.139350203046872
第4次切割,为正96边形,圆周率π≈3.14103195089053
第5次切割,为正192边形,圆周率π≈3.1414524722853443
第6次切割,为正384边形,圆周率π≈3.141557607911622
第7次切割,为正768边形,圆周率π≈3.141583892148936
第8次切割,为正1536边形,圆周率π≈3.1415904632367617
第9次切割,为正3072边形,圆周率π≈3.1415921060430483
第10次切割,为正6144边形,圆周率π≈3.1415925165881546
第11次切割,为正12288边形,圆周率π≈3.1415926186407894
第12次切割,为正24576边形,圆周率π≈3.1415926453212157
第13次切割,为正49152边形,圆周率π≈3.1415926453212157
第14次切割,为正98304边形,圆周率π≈3.1415926453212157
第15次切割,为正196608边形,圆周率π≈3.1415926453212157文章源自略懂百科-http://wswcn.cn/56800.html

想象古代的人能够计算到小数点后7位,在条件那么简单的情况,真是厉害。文章源自略懂百科-http://wswcn.cn/56800.html

关于圆周率计算的方法,后续再花一些时间琢磨下,比如用蒙特卡洛的算法。今天给我最大的一个收获是让我真正做了一些计算,能够推导出一个看起来有些复杂的公式,看来小学初中的课程内容我开始熟悉起来了。文章源自略懂百科-http://wswcn.cn/56800.html

文章源自略懂百科-http://wswcn.cn/56800.html

懵懂先生
  • 本文由 发表于 2022年10月28日 16:08:05
  • 转载请注明:http://wswcn.cn/56800.html
投稿文章

俄罗斯人为什么叫毛子

国人习惯上称韩国人为棒子,日本人为鬼子,印度人为阿三,俄国人叫老毛子,这些称呼虽然都有调侃的成分,但都还是有一定历史缘由在里面的。小编这里说说国人称俄国人为毛子的历史缘由。 在我国古代,普通老百姓能见...
投稿文章

光遇完成火炬寻物游戏任务怎么完成(光遇完成火炬寻物游戏任务怎么做)

北京冬奥会开幕式上,圣火点燃之际,人们发现,火炬变得比以往奥运要小。之后,总导演张艺谋披露,这次采用了清洁氢能源做原料。 2月4日晚,第二十四届冬季奥林匹克运动会开幕式在北京国家体育场举行。图为北京冬...
投稿文章

iPhone投屏win10电脑(iOS12投屏到win10电脑)

苹果投屏到电脑win10要怎么弄?在日常生活和工作中,我们经常会通过手机来向电脑传输一些文件,不过有的时候直接投屏或许会比慢慢传输文件更加快捷。但由于设备的原因,投屏也时常无法正常进行。以我们常用的w...
投稿文章

无罪之最第二季什么时候播(无罪之最有第二季吗)

好久没安利剧单了,今天来一发。 这次推荐的是五部近期播出、且口碑不错的剧,或是层层反转、或是脑洞大开。 如果院长第一次安利时,你还没看,不妨现在就给它们一个机会—— 《无罪之最》 El inocent...