基于泰勒级数计算圆周率1

任务描述
背景
  有这么一个数,它普遍存在于数学、物理等领域,它是现代科学中应用最广泛、作用最重要的一个常数,它是我们曾经口中的“山巅一寺一壶酒”,这个数就是圆周率。作为现代社会几乎每个人都知道的一个概念,圆周率的计算过程却跨越了几千年的历史,凝聚了大量科学家的心血,也见证了人类科技的不断进步(下图显示了圆周率的计算历程,横轴是年份,纵轴是用对数坐标表示的圆周率精确位数)。

虽然早在公元前 2 千多年前,古人就发现了圆的周长与直径存在一个固定的比值,并精确到小数点后 1 位,但从“山巅一”到“山巅一寺一壶酒”中间却经历了两千多年,直到公元 263 年,我国的刘徽才将圆周率精确到小数点后 5 位。两百多年后,祖冲之进一步精确到 7 位,从当时的技术水平看,这是一个非凡的成就,这一成就直到近千年后才被打破,这也使得祖冲之与圆周率成为两个紧密联系在一起的词。
  十八世纪以来,级数等数学理论的发展为圆周率的计算开辟了新的思路。1948 年,圆周率被精确到小数点后 808 位,达到人工计算的巅峰。
  随着电子计算机的出现,圆周率的计算精度突飞猛进。第一台通用电子计算机 ENIAC 将圆周率精确到小数点后 2037 位。2019 年 3 月 14 日(圆周率日),谷歌宣布圆周率被精确到小数点后 31.4 万亿位。

任务
  下面给出的是基于泰勒级数计算圆周率的公式:

本关任务就是利用此公式计算圆周率。

相关知识
   参考之前关卡。

编程要求
  补全 Begin-End 区间的代码,其功能是根据给定的 n(用变量n表示),利用泰勒级数计算圆周率的近似值(用变量pi表示),说明如下:
  1)n的值在程序运行时由系统自动设置(初始代码第 1 行),不要再额外设置,编程时假设其已知即可;
  2)初始代码最后一行是打印计算结果,不要再额外添加打印语句,按要求算出变量pi的值即可;
  3)不要改动 Begin-End 区间之外的代码。

测试说明
  本关共有若干测试集,在每个测试集中,系统会自动设置变量n的值,程序的功能是据此计算圆周率近似值pi。例如,测试集 1 的输入是:

1
  测试集 1 的运行结果为:

4.000000
开始你的任务吧,祝你成功!

n = int(input())
########## Begin ##########
i,s = 1,0
while i<=n:
    sn = -1**(i-1)*(1/(2*i-1))
    if i%2!=0:
        sn = abs(sn)
    s = s + sn
    i = i+1
pi = s*4
########## End ##########
print('%.6f' % pi) #圆周率= 3.1415926…
  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值