用matlab编程求根据以下公式计算s;n通过形参传入。S=1+1/(1+2)+1/(1+2+3)+……+1/(1+2+3+…+n)

如题所述

function y=myfun(n)
s=1;
a=0;
for i=2:n
for j=1:i
a=a+j;
end
s=s+1/a;
end
y=s;

调用函数 myfun(n)追问

您编的程序运行不出来,要在function函数下面加上n的输入值,但是,这样运行最后的结果还是不正确,您在看看错哪儿了,,谢谢哈

追答

函数的输入是n呀,我写完之后试过了呀。。。

不好意思。忘记将大循环中的a清零了。。。
function y=myfun(n)
s=1;
a=0;
for i=2:n
for j=1:i
a=a+j;
end
s=s+1/a;
a=0;
end
y=s;
这样可以了,亲测成功

温馨提示:答案为网友推荐,仅供参考
相似回答