用matlab编程计算:最好写详细一点,谢谢

编程序计算:,前100项。(不允许用循环,采用矩阵)... 编程序计算:

,前100项。(不允许用循环,采用矩阵)
展开
 我来答
百度网友ff3953b
2013-09-10 · TA获得超过385个赞
知道小有建树答主
回答量:111
采纳率:0%
帮助的人:53.4万
展开全部
% 序列:1,2,...,100
n=1:100;
% 求阶乘,序列:1!,2!,...,100!
a=factorial(n);
% 求阶乘的倒数序列,各项为:(-1)^(n-1)/n!
x=(-1).^(n-1)./a;
% 求前1、2、...、100个数字的和之后,重新构成数组
y=cumsum(x);

% 注意:用了“.^”和“./”,并且用了cumsum()这个函数。我理解求前100项,是指将n=1,2,...,100的100个结果都给出来,所以用了cumsum()函数,否则只需要y=sum(x)即可。另外,我猜题目的要求是不允许使用for语句。实际上n=1:100这样的语句,等同于for循环语句。
追问
为什么要用“.^”和“./”呢?这一点不明白
追答
matlab中的+-*/等运算优先按矩阵方式运算,比如A*B,表示矩阵A乘以矩阵B;如果改用A.*B,则表示矩阵A当中的元素与矩阵B当中相对应的元素相乘。上面的程序代码中,n、a已经是矩阵了,只能按对应的元素运算。
marioLLJ
2013-09-10
知道答主
回答量:30
采纳率:0%
帮助的人:21.5万
展开全部
x=1:100;
y=(-1).^(x-1)./factorial(x);
sum(y)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式