matlab怎么用for语句求圆周率? 由莱布尼兹级数可知,π/4=1-1/3+1/5-1/7+······
所以,我们通过for和while循环语句来求解。求解方法如下:
∑(-1)^j*(1/n)
2、用for循环语句,写出求解其和的累加值,即
S=0;
for i=1:100 %这里100是可变的值
S=S+(-1)^j*(1/n)
end
3、计算π值,即
π=4S
4、可执行的代码如下
clear all,clc
%莱布尼兹级数
S=0;
for n=1:10000
S=S+(-1)^(n-1)*(1/(2*n-1));
end
PI_value=4*S
%梅钦公式
S=0;
for n=1:100
S=S+(-1)^(n-1)*(4*(1/5)^(2*n-1)/(2*n-1)-(1/239)^(2*n-1)/(2*n-1));
end
PI_value=4*S
5、扩展知识
从上述运行结果来看,用莱布尼兹级数和梅钦公式计算π值,梅钦公式比莱布尼兹级数收敛比较快,但两者的计算精确位数为15)。