- 在线时间
- 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 |
自学,一本教程上的一个例子:
' d: q' C4 o4 n/ R编程输入范德蒙德型矩阵。2 [/ k C7 K/ E+ B
在MATLAB命令窗口输入以下代码: %%实际操作的时候,是输到M文件里面的
, { p2 h3 ]/ P6 G) Cclear all;+ j$ s9 k3 |9 L6 B7 v0 I: ~
x=[-1,0,1,2,3]';
; X0 a, @9 [% n- l- b/ ] cfor i=1:5
~0 r+ \# Q+ e7 {, I, m for j=1:5
4 z1 K' H2 a$ U( S' X A(i,j)=x(i).^(j-1);
' H" t2 N5 n! T5 | end
8 p% s0 a0 ]# @+ K* Y' b! Y$ ~# yend E, X% C+ i9 G8 T
A
! m5 Z- h2 x+ }) u0 C运行后显示正确答案。
+ C+ @2 ^4 m& x# Z* p: J光是这样不错,但是书上又来了句:
5 ?' I$ ^7 z: s8 p. j h- V8 b“在实际MATLAB编程中,采用循环语句会降低其执行速度,应尽可能多地利用向量来设计程序。如上述程序可改写成以下更简明的形势:”/ @4 D' h7 }, Y3 B9 ?
8 `) M- Q8 Z9 k1 S9 M然后书上贴了一段代码:- O$ s5 U; X2 |5 I) T9 Z T
clear all;3 z5 \- n) L$ C) I! ]" a0 g4 h+ E
x=[-1,0,1,2,3]';" \, o/ u9 T5 O: K( r
for j=1:5
' f5 ?2 u0 X, l/ C1 Q/ q/ v3 ^5 p A(i,j)=x(i).^(j-1);
( v+ o" j5 [: Y/ Oend
, r8 z Y/ f% S# m# c1 e2 } G! W. iA
! l6 ]3 C2 G! e4 z4 g3 K书上对这段的解释是:
2 X8 O$ W: \* A! c8 v, t“由于MATLAB支持向量运算,上述问题可以改用单循环来处理。”& j6 D0 S1 M/ W8 w( x- f: l' v+ C
8 |( B+ o2 O3 Q: j1 Z
但是后一段我运行后出错,显示第4行出错,报错:
- k- Y( Q" F, e* I+ W( _; aSubscript indices must either be real positive integers or logicals.
6 m/ J( Z' o, v$ C M2 ]是书上错了吗?如果是,那么,按照书上的那个意思,程序应该怎么改?
! q2 H0 [# J8 J& o8 S; P谢谢! |
zan
|