- 在线时间
- 30 小时
- 最后登录
- 2016-8-26
- 注册时间
- 2012-9-1
- 听众数
- 7
- 收听数
- 0
- 能力
- 0 分
- 体力
- 553 点
- 威望
- 0 点
- 阅读权限
- 30
- 积分
- 202
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 71
- 主题
- 3
- 精华
- 0
- 分享
- 0
- 好友
- 9
升级   51% TA的每日心情 | 奋斗 2014-4-16 14:14 |
|---|
签到天数: 57 天 [LV.5]常住居民I
- 自我介绍
- 这家伙很懒,没有自我介绍。
 群组: 学术交流B |
自学,一本教程上的一个例子:
0 p+ J* }$ R' W$ g编程输入范德蒙德型矩阵。4 Q7 U" U( q4 u( Z
在MATLAB命令窗口输入以下代码: %%实际操作的时候,是输到M文件里面的& w$ s) A4 D J* W1 c i, T
clear all;
) ?9 U1 t+ X$ G2 h' c. {& wx=[-1,0,1,2,3]';0 I8 \6 v3 e. d7 z
for i=1:5
3 X2 a( } ]: r: ^+ g' h for j=1:5; y5 J% e$ W) G% K& G( b
A(i,j)=x(i).^(j-1);6 y! d7 K% \4 X% m
end& e- M1 y- l* k: M
end' K/ j' u- ?; B
A$ N7 s5 K; V3 _* r% Y
运行后显示正确答案。
3 {% F$ F( t0 T) O8 |6 h( w# H光是这样不错,但是书上又来了句:
5 S9 K$ I* y1 H' L3 |( T“在实际MATLAB编程中,采用循环语句会降低其执行速度,应尽可能多地利用向量来设计程序。如上述程序可改写成以下更简明的形势:”/ O6 c" d; B5 f0 T; k3 }/ q
' l" d. c! L, t/ \然后书上贴了一段代码:
+ g4 ^. H# t4 N! r$ {0 m' yclear all;( k" `* B3 c5 K$ E+ h% m
x=[-1,0,1,2,3]';
; ^' ~5 D/ _( B# D- l6 F- o) s, H0 ]for j=1:57 j6 p8 |5 B* c+ B' v2 Q( m% K
A(i,j)=x(i).^(j-1);
( o2 b. i, P; C( V W! Z% r% y$ wend, v: ?2 }! W G* F. p* F! r
A
k( m+ x0 Y( P) ?$ A7 D! G书上对这段的解释是:
6 |3 C. N: A6 S! a9 L- P: ?- x( J“由于MATLAB支持向量运算,上述问题可以改用单循环来处理。”2 l/ o5 s! ?! p# W3 N7 L% o; g
/ i3 v9 K: G' b4 A0 L" b. Y
但是后一段我运行后出错,显示第4行出错,报错:
/ O4 a9 h1 v' `3 u) G$ O" ISubscript indices must either be real positive integers or logicals.6 U# u0 X/ Y6 V: _6 J" p+ o
是书上错了吗?如果是,那么,按照书上的那个意思,程序应该怎么改?
( n5 `% Q2 v @谢谢! |
zan
|