展开全部
%分析,pi/4 是 正负相间的奇数的倒数和,而正负相间用(-1)^(k-1)表示,奇数用2*k-1表示(k从1开始),累加和空间用初始值为0的s表示,于是程序出来了。
k=1;%给k初值,以满足“奇数”与“正负”的要求
s=0;%给s初始值
q=1;%作为累加项
while abs(q)>1e-17
q=(-1)^(k-1)/(2*k-1);
s=s+q;
k=k+1;
end
s%最后建议,此算法不好,最好结束条件不要那么“苛刻”
k=1;%给k初值,以满足“奇数”与“正负”的要求
s=0;%给s初始值
q=1;%作为累加项
while abs(q)>1e-17
q=(-1)^(k-1)/(2*k-1);
s=s+q;
k=k+1;
end
s%最后建议,此算法不好,最好结束条件不要那么“苛刻”
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
d = 1;
sum = 0;
s = 1;
while 1/d > 1.0e-6
sum = sum + s*(1/d);
d = d + 2;
s = -s;
end
p = 4 * sum
精度最好不要大于1.0e-6,一是费时(计算量太大),二是没什么实际意义。
sum = 0;
s = 1;
while 1/d > 1.0e-6
sum = sum + s*(1/d);
d = d + 2;
s = -s;
end
p = 4 * sum
精度最好不要大于1.0e-6,一是费时(计算量太大),二是没什么实际意义。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
代码如下:
format long g
i=1;
k=1;
s=0;
while abs(k)>1e-17
s=s+k;
i=i+2;
k=-1/i;
end
s
%自己调试一下
format long g
i=1;
k=1;
s=0;
while abs(k)>1e-17
s=s+k;
i=i+2;
k=-1/i;
end
s
%自己调试一下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
clc
t=1;
pi4=0;
m=1;
while abs(1/t)>exp(-17)
if mod(m,2)==1
pi4=1/t+pi4;
else
pi4=pi4-1/t;
end
m=m+1;t=t+2;
end
4*pi4
t=1;
pi4=0;
m=1;
while abs(1/t)>exp(-17)
if mod(m,2)==1
pi4=1/t+pi4;
else
pi4=pi4-1/t;
end
m=m+1;t=t+2;
end
4*pi4
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |