- 在线时间
- 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 |
自学,一本教程上的一个例子:% Y4 ]/ F% W5 B. y1 y+ Q3 q
编程输入范德蒙德型矩阵。, X z6 o8 ~# F
在MATLAB命令窗口输入以下代码: %%实际操作的时候,是输到M文件里面的/ k) r1 |3 o, ?$ S( h+ D" C5 c6 {8 i- u
clear all;8 P1 v7 W# Z- l; W& n; \
x=[-1,0,1,2,3]';; r1 l) b& B" H8 E: ~2 I
for i=1:55 i* E! d0 c# M
for j=1:5' p; [8 M _' L9 i9 ^* r, f2 b, C
A(i,j)=x(i).^(j-1);
% E' C' c1 t& u ]! ~% `1 w f end. N$ r5 ?; v3 ]2 k
end
, M& q3 m3 F5 XA% g* ?# y/ W/ _2 c; O! A X. Y5 A* J" c
运行后显示正确答案。
4 I( L- j' P- ]" @; u光是这样不错,但是书上又来了句:) r1 J7 K2 [8 s7 a
“在实际MATLAB编程中,采用循环语句会降低其执行速度,应尽可能多地利用向量来设计程序。如上述程序可改写成以下更简明的形势:”
- T* m5 A8 g V, g/ Q
_ m. j4 N- D然后书上贴了一段代码:
" b2 L2 S8 q1 h" l; qclear all;
( j! G3 b( L3 C# x9 x6 Bx=[-1,0,1,2,3]';% Y5 d- w2 H' `: S) R
for j=1:5
* D: J7 B, P4 |3 C: e A(i,j)=x(i).^(j-1);% F/ |" g; a3 A" K% r5 ]. F
end9 B( {6 a: D' ?
A2 E5 e8 [! u: B2 f: q$ }1 w
书上对这段的解释是:+ j, [) U; i+ I" P' _
“由于MATLAB支持向量运算,上述问题可以改用单循环来处理。”" v I: T: k. I4 u$ _
* f1 Y1 g" F7 v6 T' ^$ r
但是后一段我运行后出错,显示第4行出错,报错:' R0 V0 {% h( \8 x4 R4 E5 [( E
Subscript indices must either be real positive integers or logicals./ g0 c1 D( Z$ P: b3 r+ }6 O' q* U
是书上错了吗?如果是,那么,按照书上的那个意思,程序应该怎么改?7 C- w' S$ y4 _* H) _
谢谢! |
zan
|