- 在线时间
- 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 |
自学,一本教程上的一个例子:$ Y3 _; m# B l5 |9 d
编程输入范德蒙德型矩阵。* J }8 U6 f8 S! f! r* s2 f$ w
在MATLAB命令窗口输入以下代码: %%实际操作的时候,是输到M文件里面的; @( F8 d9 `1 z9 w
clear all;
+ A Y) M& n9 t$ M' W5 G) s. }+ J7 ux=[-1,0,1,2,3]';
9 i6 K+ I( f) T& z1 h( Ifor i=1:55 W$ A" U# N5 g7 o, W
for j=1:5
7 m" V; \9 w2 i% b& I' ~* u+ L A(i,j)=x(i).^(j-1);/ f6 d7 R8 o! y
end
7 x. F! ~7 \" E5 \9 G& oend
$ Z( ~) V: q2 wA( Z5 L8 V# ~# r2 d+ `/ L4 g
运行后显示正确答案。
5 V7 E7 |7 w( t0 }9 |) L& {光是这样不错,但是书上又来了句:
1 l7 L" V- O5 w, |5 S“在实际MATLAB编程中,采用循环语句会降低其执行速度,应尽可能多地利用向量来设计程序。如上述程序可改写成以下更简明的形势:”
/ u$ v+ S. {( S$ T9 s5 L
- F4 y5 {( [1 G5 q& X! G3 K然后书上贴了一段代码:& R( J6 n6 M4 m( Z7 W
clear all;
! G0 j5 l: x, [9 J/ V4 m/ L! R/ Sx=[-1,0,1,2,3]';
( I8 ?6 c. v- [for j=1:5
6 H N& x* l9 C" ~* _% u4 H A(i,j)=x(i).^(j-1);
9 ~# Q4 N* D4 C7 P& fend- v' j5 L! a- U- l' l
A5 f, C) Y E8 ?" i6 g
书上对这段的解释是:
' B% T* t0 L6 J. ]5 x+ }' N/ L“由于MATLAB支持向量运算,上述问题可以改用单循环来处理。”$ x) Z$ }2 [5 j7 d/ h) T
. a& J$ Z) ^* ]# y- ~5 t
但是后一段我运行后出错,显示第4行出错,报错:
3 n. o. }1 S& Q8 _% b- ^! }2 CSubscript indices must either be real positive integers or logicals.' d; T% ~" k1 F( e* }
是书上错了吗?如果是,那么,按照书上的那个意思,程序应该怎么改?
, Y8 v& O" F4 d; Z' m. }; ]* I谢谢! |
zan
|