加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

使用MATLAB计算矩阵的所有数据求和

(2017-06-09 16:57:24)
    今天是沈阳美食节,工业大学东门开,所以就提前写了。又是周五了,周末快乐!
    很多的时候使用MATLAB计算东西就很简单,那么就介绍一下使用MATLAB计算矩阵的和!
    比如一个矩阵
    a=[1 2 3;4 5 6;7 8 9;10 11 12];
使用下面这条语句;
http://s9/mw690/00688zkAzy7bJsgpbtKd8&690
可以得到每一列的和;
http://s13/mw690/00688zkAzy7bJsjesDG0c&690
可以得到每一行的和;
当然今天当然不是想说这一个东西;今天要说的是使用for循环求解;
使用for循环,首先思考一下,需要有行数,列数,有内循环,外循环;
内循环可以是求每一行的总和,每求完一次行的和然后跳出内循环进入外循环,外循环加一,再去计算下一行的和;这样最后可以得到结果。结果放在sum里;
这样写,首先定义sum=0;
定义行数为i,列数为j;
正常编程就是:
a=[1 2 3;4 5 6;7 8 9;10 11 12];
sum=0;
for i=1:4
for j=1:3
sum=sum+a(i,j);
end
end
结果如下:
那么如果说每一行的列数不相等怎么办,比如第一行3个数,第二行5个数,第三行2个数,第四行3个数;
如果按照上面的思路去写就不好整,因为你没法设计列数,如果列数按照最大的写
http://s16/mw690/00688zkAzy7bJtlXruD6f&690
结果是这样的,不是我们期望的结果;其实也好办,就是把所有的不满5列的全部补为0呗。
也可以这样写
clear
a=[1 2 3;5 2 3 6 4;8 6;9 6 4];
sum=0;
m=[3 5 2 3];
for i=1:1:4
for j=1:1:m(i)
sum=sum+a(i,j);
end
end
http://s10/mw690/00688zkAzy7bJKqzpdT49&690
当然,我写这个没有多大意思,就是介绍一种方法。
其实还有很多的MATLAB求和的东西,我就不介绍了。到下周再介绍。我再学习学习!
周末愉快!


0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有