(1)
%Wallis
int a;
int k;
b=1.0;
fprintf('wallis\n');
k=input('输入k');
for a=1:k;
b=(b*(2*a)/(2*a-1))*(2*a)/(2*a+1);
end;
vpa(2*b,100000)
(2)
1.
%taylor
s=-1;
int k;
n=1;
t=1;
ppi=0;
k=input('输入k的值');
for ii=0:k
n=2*ii+1;
s=-s;
t=s/n;
ppi=ppi+t;
end
vpa(4*ppi,100000)
2.%taylor改进
s1=0;s2=0;

本文对比了使用MATLAB实现的沃里斯公式、泰勒级数、马钦公式和概率方法来计算π的效率。沃里斯和泰勒级数方法收敛速度线性,而泰勒级数的改进版及马钦公式经Richardson加速后表现为对数线性收敛。概率方法的精度和收敛速度相对较慢,需要大量实验。
2666

被折叠的 条评论
为什么被折叠?



