声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 904|回复: 2

问个问题,请指教

[复制链接]
发表于 2006-4-11 09:04 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
<P>下面是我的一个函数:<BR>function k=demoBreak(n)<BR>  x=rand(1,n);<BR>  k=1;<BR>  while k&lt;=n<BR>      if x(k)&gt;0.8<BR>          break<BR>      end<BR>      k=k+1;<BR>  end<BR>  disp(x(k));<BR>在命令行运行时出现如下故障:<BR>&gt;&gt; demoBreak(1)<BR>??? Attempted to access x(2); index out of bounds because numel(x)=1.</P>
<P>Error in ==&gt; demoBreak at 10<BR>  disp(x(k));<BR>我不明白的是x明明是rand(1,n),与k的取值无关呀。而且也没有限定边界呀。<BR>还请大虾指点迷津。不胜感谢!</P>
回复
分享到:

使用道具 举报

发表于 2006-4-11 09:11 | 显示全部楼层

回复:(stema)问个问题,请指教

不管n取多少,你这段循环完之后k都等于n+1<BR>而x只有n个<BR>当然出错
 楼主| 发表于 2006-4-11 09:27 | 显示全部楼层

回复:(aspen)回复:(stema)问个问题,请指教

哦,明白了<BR>谢谢啦
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-14 09:31 , Processed in 0.064791 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表