24小时热门版块排行榜    

查看: 790  |  回复: 4

200204121

金虫 (正式写手)

[交流] 【求助】刚学MATLAB有个小程序有一句看不懂 请大侠指教

clear
   x=-6:0.01:6;
   y=x;
   s=size(x);
   zs=s(1,2)^2;
   k=0;
   for i=1:s(1,2)
       for j=1:s(1,2)
           a1=(x(i)^2)/9+(y(j)^2)/36;
           a2=(x(i)^2)/36+y(j)^2;
           a3=(x(i)-2)^2+(y(j)+1)^2;
           if a1               if a2                   if a3                       k=k+1;
                   end
               end
           end
       end
   end
   mj=(12^2)*k/zs;
运行结果:
mj = 7.2150
这里面的zs=s(1,2)^2;中的s(1,2)是什么意思呢?什么函数么?在线等
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mjq240301

木虫 (小有名气)

size(x)是指矩阵的大小,也就是说size(x)给s返回的值是x的最大行数和最大列数,s是一个1行2列的矩阵,而s(1,2)表示第1行第2列,即1201!
2楼2010-10-31 08:21:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

200204121

金虫 (正式写手)

s的矩阵就是(1200 1200)么 为什么会是1201呢 这点还是不懂,呵呵
3楼2010-10-31 13:07:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mjq240301

木虫 (小有名气)


200204121(金币+5):非常感谢您的耐心解答 2010-10-31 21:38:39
nono2009(金币+1):鼓励应助,欢迎常来交流 2010-11-02 07:07:37
s的矩阵是[1 1201]   x=-6:0.01:6;  x中有1201个数据0前面600个 后面600个  加上0 就是1201个数据了  因为s是一行1201列的矩阵  所以size返回的是 [1 1201]
4楼2010-10-31 17:43:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

于孑

银虫 (小有名气)

200204121(金币+5):非常感谢您的耐心解答 2010-10-31 21:36:42
引用回帖:
Originally posted by 200204121 at 2010-10-31 13:07:06:
s的矩阵就是(1200 1200)么 为什么会是1201呢 这点还是不懂,呵呵

这个问题就像是0到10有几个整数,答案是10+1个
5楼2010-10-31 17:44:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 200204121 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见