- 在线时间
- 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 |
自学,一本教程上的一个例子:
x' Q4 w% m" }) p& O+ W& g4 V编程输入范德蒙德型矩阵。, g4 I: @1 t8 w2 g! ~; p. X; \* f
在MATLAB命令窗口输入以下代码: %%实际操作的时候,是输到M文件里面的
+ s# ]3 w( H9 C6 v6 B& `clear all;
2 j. ^3 \" q. z; r1 e. u1 t/ kx=[-1,0,1,2,3]';( B* h/ d, \* U8 h( P N. `" u
for i=1:5
7 n5 I6 r H7 v2 [6 k. n for j=1:5
# {0 I% o1 H% T& o A(i,j)=x(i).^(j-1);
7 W% L* V1 b; F; }* j8 ~7 j* K end2 e& s1 r# W$ e8 X( v
end( X7 h9 h( t/ d1 L3 M9 \; V9 `$ w ]
A
$ j% {* l& v1 |2 Y$ J( \运行后显示正确答案。
, o. E! l! ? f3 G3 |光是这样不错,但是书上又来了句:
& ]& H# K6 J: }/ F; b% `5 O* i“在实际MATLAB编程中,采用循环语句会降低其执行速度,应尽可能多地利用向量来设计程序。如上述程序可改写成以下更简明的形势:”
, I% ^# a& I6 O f) z( u4 x Z/ b& @5 i# y' U2 W
然后书上贴了一段代码:8 n% d" [* G4 R! c2 i+ |- w, V
clear all;
$ B" T: }/ {9 J3 }& t( _x=[-1,0,1,2,3]'; e0 R* |; M. V; d' F( A/ y, b
for j=1:5
5 c" U" ]% R( h1 ] A(i,j)=x(i).^(j-1);2 \% @& l8 U4 ]0 f$ ~) \
end! B$ _' e) h8 R$ u$ o9 d
A0 \5 r6 k$ A |( o
书上对这段的解释是:
- p$ X2 q# ^6 X3 L$ k( ^“由于MATLAB支持向量运算,上述问题可以改用单循环来处理。”
- I/ @* M. K6 q1 W6 z
% n( X V6 ?7 H但是后一段我运行后出错,显示第4行出错,报错:
, K/ {1 [( \% cSubscript indices must either be real positive integers or logicals.
1 {6 G. B. P: o# z$ m是书上错了吗?如果是,那么,按照书上的那个意思,程序应该怎么改?
2 f2 o5 h5 J0 _) c谢谢! |
zan
|