matlab sum x 2,有关matlab的sum函数问题,其中sum(x,y)的表示方法是什么意思?急用...

问题描述:

有关matlab的sum函数问题,其中sum(x,y)的表示方法是什么意思?急用

n=10;

z = zeros(n,n);

cells = z;

cells(n/2,.25*n:.75*n) = 1;

cells(.25*n:.75*n,n/2) = 1;

x = 2:n-1;

y = 2:n-1;

sum(x,y) = cells(x,y-1) + cells(x,y+1) + ...

cells(x-1,y) + cells(x+1,y) + ...

cells(x-1,y-1) + cells(x-1,y+1) + ...

cells(x+1,y-1) + cells(x+1,y+1);

1个回答

分类:

综合

2014-09-27

问题解答:

我来补答

首先:cells(n/2,.25*n:.75*n) = 1;cells(.25*n:.75*n,n/2) = 1;---------

这两句有问题,行、列标志非整数

改了一下:

cells(n/2,round(0.25*n:0.75*n))=1;

cells(round(0.25*n:0.75*n),n/2)=1;

>> x

x =

2 3 4 5 6 7 8 9

>> y

y =

2 3 4 5 6 7 8 9

cells(x,y-1)----表示cells的第2-9行,第1-8列的元素

cells(x,y+1)---表示cells的第2-9行,第3-10列的元素

cells(x-1,y)---表示cells的第1-8行,第2-9列的元素

cells(x+1,y)---表示cells的第3-10行,第2-9列的元素

后面的都类似.

再问: 那个不是整数的它会自动四舍五入的,cells表示的内容也知道,我要问的是sum(x,y)这样的用法表示的是什么??我运行了一下,只是运行sum(x,y)会出错,加上等号后面的内容才能运行成功。所以我想知道这样表示是什么意思

再答: 你是说只运行sum(x,y)? sum就是你定义的一个矩阵,这一句是是赋值语句 就是把等号右面的计算值赋值给sum的第2-9行,第2-9列的元素

再问: 就那整个程序运行的时候,我把sum改成了s后,两次运行的结果不一样的,sum对应的是9维方阵,s对应的是3维方阵

再答: 不会的,你看: clear all;clc; n=10; z=zeros(n,n); cells=z; cells(n/2,round(0.25*n:0.75*n))=1; cells(round(0.25*n:0.75*n),n/2)=1; x=2:n-1;y=x; s(x,y)=cells(x,y-1)+cells(x,y+1)+cells(x-1,y)+cells(x+1,y)... +cells(x-1,y-1)+cells(x-1,y+1)+cells(x+1,y-1)+ cells(x+1,y+1); >> s s = 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 2 1 2 0 0 0 0 1 2 5 4 5 3 2 1 0 1 1 4 4 4 2 1 1 0 1 2 5 4 5 3 2 1 0 0 0 3 2 3 0 0 0 0 0 0 2 1 2 0 0 0 0 0 0 1 1 1 0 0 0

展开全文阅读

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值