利用公式求π的近似值,数列取前1,000,000项,输出结果保留小数点后八位。(求一个完整编程,容易犯的错误)
2条回答 默认 最新
关注
采用莱布尼茨无穷级数求PI,PI/4 = 1- (1/3) + (1/5) - (1/7) + ...
#include <stdio.h> /* PI/4 = 1- (1/3) + (1/5) - (1/7) + ...*/ int main() { unsigned int max = 1000000; // 最大迭代次数 int count = 0; // 迭代计数 double pi = 0; unsigned k = 1; // 数列项分母 int sign = 1; // 控制正负号 while (count < max) { pi += sign * (1.0 / k); k += 2; sign = -sign; count++; } pi *= 4; printf("%.8lf", pi); return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录