π=2(2/√2)2/(√(2+√2))*……的公式求圆周率pi,运算到乘法项小于1+1e-10(即1.0000000001)为止,以printf("%-3d:item=%-15.10lf,pi=%-15.10lf\n",k,item,pi)输出,k为迭代次数(首次迭代输出1),item为乘项(首个累乘项为2/sqrt(2)),pi为当前累乘值,如:第一行输出1:item=1.4142135624;pi=2.8284271247。用C语言代码编程
1条回答
Lucky_Dog_c 2023-10-27 15:14关注#include <stdio.h> #include <math.h> int main() { double item = 2.0 / sqrt(2.0); double pi = 2.0 * item; int k = 1; printf("%-3d:item=%-15.10lf,pi=%-15.10lf\n", k, item, pi); while (item > 1.0000000001) { item = 2.0 / sqrt(2.0 + sqrt(2.0 + item)); k++; pi *= item; printf("%-3d:item=%-15.10lf,pi=%-15.10lf\n", k, item, pi); } return 0; }评论 打赏 举报解决 1无用