历史上有许多计算圆周率pai的公式,其中,格雷戈里和莱布尼茨发现了下面的公式:
pai = 4*(1-1/3+1/5-1/7 ....)
这个公式简单而优美,但美中不足,它收敛的太慢了。
如果我们四舍五入保留它的两位小数,那么:
累积了1项和是:4.00
累积了2项和是:2.67
累积了3项和是:3.47
。。。
请你写出它累积了100项的和是多少(四舍五入到小数后两位)。
源代码:
#include<stdio.h> //pai = 4*(1-1/3+1/5-1/7 ....) double While() { double sum=0; int flag=1;//奇数项位正,偶数项为负 double temp=1; int i=1; while(i<=100) { temp=1.0/(2*i-1)*(flag); i++; sum=sum+temp; flag=-flag; } return sum; } int main() { double pai=0.0; pai=4*While(); printf("%.8lf\n",pai); return 0; }
输出:3.13159290,所以四舍五入为3.13
时间: 2024-10-19 01:20:11