- 在线时间
- 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 |
自学,一本教程上的一个例子:
* n. Q( ^$ f p( k编程输入范德蒙德型矩阵。9 N. E! t" |- z( Z6 K5 J
在MATLAB命令窗口输入以下代码: %%实际操作的时候,是输到M文件里面的2 @+ [" W* ?0 @
clear all;
2 b1 m& N" q+ D" w7 c; mx=[-1,0,1,2,3]';. f" g. i0 M2 x0 a' B) D% u
for i=1:5
6 e1 x* d6 C, [ for j=1:5
q6 a8 z. C! g3 w. w I4 }) }7 O A(i,j)=x(i).^(j-1);1 Z* Z5 J4 g" W" P0 {8 G; g9 W
end
3 v2 a% g2 m) aend
! I- j2 M9 J/ O2 K( DA
* Y# T3 o2 S' H: @! D0 ?4 o运行后显示正确答案。
4 G+ Y7 s' `! U% G. [1 Z光是这样不错,但是书上又来了句:
! G* S* }+ }+ W& U6 Q“在实际MATLAB编程中,采用循环语句会降低其执行速度,应尽可能多地利用向量来设计程序。如上述程序可改写成以下更简明的形势:”% H5 x! Y% X' P- w7 M, u1 L
# j; ^! W4 Z U) d; e% I- s, I, b7 |
然后书上贴了一段代码:
8 d2 Y9 \$ @$ J3 E7 yclear all;# O0 Y0 h* f2 A' i
x=[-1,0,1,2,3]';6 g3 z% [6 K( o
for j=1:58 A2 [/ S' p. r N0 y. C
A(i,j)=x(i).^(j-1);1 P. G2 ]4 q( I0 R
end
' r" T+ A8 g+ F% NA
3 w# n( X# {' r' m/ K# I" T书上对这段的解释是:
0 P8 S: O% _& p" G) W! {“由于MATLAB支持向量运算,上述问题可以改用单循环来处理。”2 B1 H; a! }: h z t: Z
. x/ i2 ~7 X, V2 M
但是后一段我运行后出错,显示第4行出错,报错:
! i. f( Y: w; k aSubscript indices must either be real positive integers or logicals.
4 @. w7 W8 Y" [5 c+ j) _6 s是书上错了吗?如果是,那么,按照书上的那个意思,程序应该怎么改?
! n1 K/ f0 C i$ I$ E! G6 u谢谢! |
zan
|