Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2012-11-19, 12:00   #1
zhangyunjiea
初级会员
 
注册日期: 2012-11-19
年龄: 36
帖子: 2
声望力: 0
zhangyunjiea 正向着好的方向发展
默认 matlab的一点小疑惑

clear
B=1:0.01:6;
for i=0:0.01:5
B(i*100+1)=i;
end
运行结果
??? Attempted to access B(15); index must be a positive integer or logical
请问错在哪?为什么啊?
zhangyunjiea 当前离线   回复时引用此帖
旧 2012-11-21, 12:50   #2
bigfrog
初级会员
 
注册日期: 2012-11-21
年龄: 36
帖子: 3
声望力: 0
bigfrog 正向着好的方向发展
默认 回复: matlab的一点小疑惑

索引必须是整型,由于小数的计算机存储截断问题,i从0到0.13,i*100+1的结果小数部分为0(准确点是无限小),当i=0.14时,实际i*100+1=15.000000000000002,因此会报错。建议强制转换成整型,如uint32(i*100+1)。
bigfrog 当前离线   回复时引用此帖
回复

主题工具
显示模式

发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 20:13


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.