| 查看: 976 | 回复: 6 | |||
g_txzhu木虫 (初入文坛)
|
[求助]
一段简单的matlab程序
|
|
看这段小程序: varx=[7 3 10 5] vary=zeros(size(varx)) k=0; for x=varx k=k+1 vary(k)=x.^2 end 运行正常,但是vary(k)=x.^2这个好像是把一个矩阵的值赋给矩阵的一个元素,应该不行才对!为何能够运行?而且当把varx=[7 3 10 5] 这个改成不是一行的矩阵,比如varx=[7 3 10 5;1 2 3 5]就不能运行,为何? |
» 收录本帖的淘帖专辑推荐
matlab学习 |
» 猜你喜欢
不自信的我
已经有11人回复
北核录用
已经有3人回复
要不要辞职读博?
已经有6人回复
实验室接单子
已经有3人回复
磺酰氟产物,毕不了业了!
已经有8人回复
求助:我三月中下旬出站,青基依托单位怎么办?
已经有10人回复
26申博(荧光探针方向,有机合成)
已经有4人回复
论文终于录用啦!满足毕业条件了
已经有26人回复
2026年机械制造与材料应用国际会议 (ICMMMA 2026)
已经有4人回复
Cas 72-43-5需要30g,定制合成,能接单的留言
已经有8人回复
» 本主题相关价值贴推荐,对您同样有帮助:
关于Matlab求孔隙率(找最佳阈值)
已经有6人回复
matlab怎么求一个不等式组的解????????
已经有4人回复
求大神帮我改一下下面的程序!matlab迭代法的 不知道错在哪里!
已经有7人回复
求助一个matlab关于分类讨论的问题
已经有9人回复
编一个matlab程序,求某一向量在向量场里的坐标
已经有3人回复
matlab画图求助
已经有11人回复
matlab一段程序好像陷入死循环了。。。。求跳出
已经有8人回复
新人求指教啊 请问怎么从matlab图中提取600组数据
已经有11人回复
求助啊!求一程序,用matlab程序做,用蒙特卡洛方法模拟
已经有10人回复
求助一简单matlab程序的出错问题,谢谢
已经有3人回复
求matlab求解一个方程组的问题
已经有6人回复
求助:能不能帮忙写一个用matlab求一个函数的傅里叶变换的程序
已经有16人回复
求助matlab编程
已经有13人回复
【求助】matlab求解一个简单的积分(急!!!)
已经有7人回复
【求助】请教一个matlab程序,谢谢帮忙!!
已经有15人回复
【求助】matlab中如何将程序的结果输出到一个文件中
已经有11人回复
【求助】请教把java程序转化成matlab程序
已经有9人回复
【求助】 求MAtlab求解程序!!!
已经有20人回复
hustrjh
至尊木虫 (正式写手)
- 应助: 4 (幼儿园)
- 金币: 15980.9
- 红花: 1
- 帖子: 965
- 在线: 381.4小时
- 虫号: 1989581
- 注册: 2012-09-10
- 性别: GG
- 专业: 工程热力学
【答案】应助回帖
感谢参与,应助指数 +1
|
原程序是可以运行的,为全面理解程序内容,我将分以下几个部分进行分析: 1、"for x=varx"怎么理解? 请参看Matlab关于for函数的帮助文件: Syntax:for index = values program statements : end 注意:当values取向量valArray时表示:creates a column vector index from subsequent columns of array valArray on each iteration. For example, on the first iteration, index = valArray(:,1). The loop executes for a maximum of n times, where n is the number of columns of valArray。 归纳一下:当for语句的判定条件取为"index=valArray"时,程序循环一次,index取一次valArray的一列向量,依次从向量valArray的第一列取到最后一列,故循环次数即向量valArray的总列数。 总之,"for x=varx"表示x依次取7,3,10,5,代入循环语句中运行。 2、"vary(k)=x.^2"如何理解? 有了上面关于x的认识后,我们知道这里的x仅表示一个标量,与矩阵无关。 k=1 x=7 vary(1)=49 vary=[49 0 0 0] k=2 x=3 vary(2)=9 vary=[49 9 0 0] ······ 以上便是程序的运行过程,我们也可以在运行结果中得到验证。 若我们将"vary(k)=x.^2"改为"vary(k)=x^2",计算结果是相同的,侧面说明x与矩阵无关。 3、当把varx=[7 3 10 5] 这个改成不是一行的矩阵,比如varx=[7 3 10 5;1 2 3 5]就不能运行,为何? 当我们再来看这个问题时,可以发现在循环中的赋值语句中,"vary(k)=x.^2"是无法执行的。vary(k)仅表示1*4矩阵中第k个元素,而此时x是2*1的向量,故无法赋值。若将vary改为4*2的矩阵,并相应修改赋值语句,程序仍然是可以执行的。 希望对楼主有帮助! |
» 本帖已获得的红花(最新10朵)

2楼2013-05-28 17:09:57
ajitai
铁杆木虫 (职业作家)
- 应助: 8 (幼儿园)
- 金币: 8817.4
- 散金: 5370
- 红花: 11
- 帖子: 3525
- 在线: 418.1小时
- 虫号: 854389
- 注册: 2009-09-22
- 性别: GG
- 专业: 金属材料表面科学与工程
3楼2013-05-28 17:33:07
g_txzhu
木虫 (初入文坛)
- 应助: 1 (幼儿园)
- 金币: 2082.3
- 帖子: 26
- 在线: 123小时
- 虫号: 2151011
- 注册: 2012-11-27
- 性别: GG
- 专业: 计算数学与科学工程计算
4楼2013-05-28 17:43:12
g_txzhu
木虫 (初入文坛)
- 应助: 1 (幼儿园)
- 金币: 2082.3
- 帖子: 26
- 在线: 123小时
- 虫号: 2151011
- 注册: 2012-11-27
- 性别: GG
- 专业: 计算数学与科学工程计算
5楼2013-05-28 17:45:15
hustrjh
至尊木虫 (正式写手)
- 应助: 4 (幼儿园)
- 金币: 15980.9
- 红花: 1
- 帖子: 965
- 在线: 381.4小时
- 虫号: 1989581
- 注册: 2012-09-10
- 性别: GG
- 专业: 工程热力学

6楼2013-05-28 19:09:17
7楼2013-05-28 19:22:57












回复此楼
g_txzhu