求累加和的项数python

问题如下:利用公式求n的近似值,直
到最后一项的绝对值小于
10-6为止,并统计出项数
π/4 = 1-1/3+1/5...
主要是怎么求项数

之前看错了,以为你问的是C++,以下是Python的实现

def approx_pi(n):
    sum = 0
    i = 1
    while True:
        item = (-1)**(i+1) / (2*i-1)
        sum += item
        i += 1
        if abs(item) < 10**-6 or i > n:
            break
    return 4*sum, i

approx, count = approx_pi(1000000)
print("近似值:", approx)
print("项数:", count)

以下是原来的回答

加上一个循环变量i
while循环每次+1即可

#include<iostream>
#include<cmath>

int main()
{
    double n=1,pi=0,item=1;
    int i=0;
    while(fabs(item)>=1e-6)
    {
        pi+=item;
        i++;
        n+=2;
        item=-item/n;
    }
    pi*=4;
    std::cout<<"π的近似值为:"<<pi<<std::endl;
    std::cout<<"共进行了"<<i<<"次计算"<<std::endl;
    return 0;
}

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^