matlab中一段程序,谁帮我看看错在哪里了?谢谢 syms x for i =0.01:0.01:1 y(i*100)=int(1,x,0,i) end

重新写一遍:symsxfori=0.01:0.01:1y(i*100)=int(1,x,0,i)end... 重新写一遍:
syms x
for i =0.01:0.01:1
y(i*100)=int(1,x,0,i)
end
展开
 我来答
mjfconan
2013-05-23 · TA获得超过4187个赞
知道大有可为答主
回答量:2239
采纳率:59%
帮助的人:1092万
展开全部
y(i*100) 应该改成 y(round(i*100))
默认情况下,matlab始终以双精度浮点数(double)存储数据,只不过为了方便使用,在很多计算中都进行了适当的判断。比如输入 a=4 ,得到的 a 并不是一个整型变量,而是一个浮点数,不过没有小数部分而已;但大多数情况下,这样的数可以作为普通整数使用,比如调用数组元素。但涉及计算的时候,比如 0.07*100 并不一定能得到整数 7 ,需要用roud、ceil、floor、fix等函数进行适当取整
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式