- 在线时间
- 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 |
自学,一本教程上的一个例子:- z8 w( F. t$ g w( Y
编程输入范德蒙德型矩阵。
3 Q5 ^% _; r' V0 m& C/ f3 \) w. ?在MATLAB命令窗口输入以下代码: %%实际操作的时候,是输到M文件里面的
; N% r+ h3 U1 w, C; Zclear all;! |3 z) I8 {! |& F* X4 y
x=[-1,0,1,2,3]';, q' Y$ Z" ^: _/ _
for i=1:5, |8 X! I& \3 \8 }3 F
for j=1:5
, i2 E3 M/ S3 a- U4 m& @$ f2 ] A(i,j)=x(i).^(j-1);
i( j7 J. @! p1 v1 [ end8 x8 B# U; |$ n
end
% ]% g) q" A- r" XA
) n% ~; @1 E1 h5 C) r& k a运行后显示正确答案。7 ~. l2 i7 S+ D
光是这样不错,但是书上又来了句:7 b. J& ^/ C: E/ P/ W/ e. X' X1 H5 F
“在实际MATLAB编程中,采用循环语句会降低其执行速度,应尽可能多地利用向量来设计程序。如上述程序可改写成以下更简明的形势:”* T6 k* G9 N/ M) f
7 S' I- H( ^- n6 T
然后书上贴了一段代码:+ m$ s3 t. E3 c: ^$ t
clear all;% q( Y' E8 U0 C, \" d" J& ~- D
x=[-1,0,1,2,3]';$ d) g2 ^6 l( ]& E2 y- N
for j=1:5' q0 P+ O1 B! [7 U1 |
A(i,j)=x(i).^(j-1);
( v1 \$ k/ W& l( \2 B! I. U. y% o$ @end! G" A4 n$ J0 S' B
A
; }2 Y& B; [* Y) C( N$ w* u书上对这段的解释是:
8 k5 t3 \" ~! j8 V3 E' {3 s“由于MATLAB支持向量运算,上述问题可以改用单循环来处理。”
- ]1 l% C7 z& F$ M% L- W* l
: o: Z/ U& ?# R但是后一段我运行后出错,显示第4行出错,报错:. ]* `. b6 ?$ t7 N/ i
Subscript indices must either be real positive integers or logicals.9 P5 u* C; b# L
是书上错了吗?如果是,那么,按照书上的那个意思,程序应该怎么改?
/ H0 P: K; a. u1 ~! Q2 T( R谢谢! |
zan
|