- 在线时间
- 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 |
自学,一本教程上的一个例子:* D g1 q' `7 [& l1 b" D
编程输入范德蒙德型矩阵。, w9 a( h! G7 P$ P) `8 O
在MATLAB命令窗口输入以下代码: %%实际操作的时候,是输到M文件里面的$ Y6 e" K O. T2 y, K
clear all;
4 x- D) y: U D3 y" U+ _& Cx=[-1,0,1,2,3]';
$ `4 O1 q, v6 @# q) P. ]- R c* Vfor i=1:5
) e4 l5 N( D. Y, J# u for j=1:5
; b8 Y5 d$ P9 l7 q A(i,j)=x(i).^(j-1);' A) ] G* ~9 g, P W9 S2 b+ u$ t
end8 M0 C/ \; w- r8 ]4 O6 i6 O
end# T, |& i$ p4 ?
A& p; n+ V% J9 d. \( q' G2 C3 s
运行后显示正确答案。! J: ]! T% l; @4 `
光是这样不错,但是书上又来了句:5 r) E7 ]( H, D$ O0 t6 F2 l
“在实际MATLAB编程中,采用循环语句会降低其执行速度,应尽可能多地利用向量来设计程序。如上述程序可改写成以下更简明的形势:”9 }3 H! a0 w( r- a
! j2 [: `: H, T& e: Z; t8 b: S+ \然后书上贴了一段代码:# M+ U4 O' u1 H3 v
clear all;
* S- t/ H* e* Q8 m* ~ bx=[-1,0,1,2,3]';
( c. K: ]/ L8 h2 X: [3 ~for j=1:5; o: D2 S! L% a% T/ l+ O& k
A(i,j)=x(i).^(j-1);
# u8 r) X3 y% ?end t8 K5 p. k; f. ] c
A
7 t$ I G" ]. W8 y, N: E& \书上对这段的解释是:
2 _1 a4 t4 l$ s% {2 L“由于MATLAB支持向量运算,上述问题可以改用单循环来处理。”5 T3 O& y/ z& Y. r+ w6 q4 @
H0 Y, R1 e' B7 u
但是后一段我运行后出错,显示第4行出错,报错:; {" J1 R" J1 l
Subscript indices must either be real positive integers or logicals.
# a% F+ S+ Z7 S; d2 [2 |是书上错了吗?如果是,那么,按照书上的那个意思,程序应该怎么改?
+ X7 y% @+ x) l! O% ]谢谢! |
zan
|