圆周率的计算方法很多,我提供一个:
n=1;
absol=0.1;
while
absol>1e-7
syms
a
for
i=1:n
a=sqrt(2-sqrt(4-a^2));
end
a=subs(a,'a','1');
y=3*2^n*vpa(a,n+5);
absol=abs(double(pi-y));
disp('绝对误差大于1e-7,再计算')
n=n+1;
end
disp('绝对误差小于1e-7,不再计算')
s=sprintf('计算次数n=%d',n);
disp(s)
Pi=y