- 在线时间
- 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 |
自学,一本教程上的一个例子:
" T. j5 A6 t d# N- g; e; A2 Z( ^6 m编程输入范德蒙德型矩阵。0 S! M5 h- i2 @7 t" t9 t/ {
在MATLAB命令窗口输入以下代码: %%实际操作的时候,是输到M文件里面的, \: E# h/ v& g {1 N3 B
clear all;
6 P: q# _" t5 G! hx=[-1,0,1,2,3]';; J) A F2 i& a' b$ }
for i=1:5
1 }+ m1 g- e) c for j=1:5
: L5 q* t. g! }/ G1 ^9 R( ?2 u! q A(i,j)=x(i).^(j-1);- N4 |) {% w) k2 j, m2 S& T6 Q
end* ~! ^4 B; T( B: \! e" ]$ ?9 I
end0 J) E2 o0 @: Q$ L% r
A
& ]+ u$ k" V1 o) G; I& o% M1 |运行后显示正确答案。
}& y2 Q* o# A& }+ s光是这样不错,但是书上又来了句:, N- t% g4 S; D9 J8 Z
“在实际MATLAB编程中,采用循环语句会降低其执行速度,应尽可能多地利用向量来设计程序。如上述程序可改写成以下更简明的形势:”# F t, n: F5 P# h# t2 X
. M! F% i& a$ O9 s. x7 g/ N- c
然后书上贴了一段代码:9 l# J! X: I5 `% C' O2 F; m
clear all;
; K0 b+ J8 X* F# e* w% X7 X% n" Yx=[-1,0,1,2,3]'; ?$ C- p) ]7 T
for j=1:52 J& o$ q& n; r# y1 {
A(i,j)=x(i).^(j-1);
! r b9 U. }( s: b9 g# }end
0 t |. P( E8 |- f4 S/ `A6 c& R8 p% l6 A5 j8 W! k7 p
书上对这段的解释是:
: g" V0 j0 Q+ D- W$ Y. Q“由于MATLAB支持向量运算,上述问题可以改用单循环来处理。”1 l4 v" A# E( e3 ?% }
8 ]; b/ G- P. ~' j) c: t
但是后一段我运行后出错,显示第4行出错,报错:
: Q. Q3 J; G: o2 t# x; pSubscript indices must either be real positive integers or logicals.
+ |' o6 ^0 e8 h) `* m1 g- {是书上错了吗?如果是,那么,按照书上的那个意思,程序应该怎么改?1 ^9 n+ k6 p, g% {
谢谢! |
zan
|