【发布时间】:2021-03-08 21:24:52
【问题描述】:
当范围小于 1 时,我尝试在 for 循环中定义范围时出现错误。
例如下面的代码:
i = linspace(0, 3, 200)
graph = zeros(length(i), 1)
for j in 0:0.015:3
graph[j] = j*cos(j^2)
end
报如下错误:ERROR: BoundsError()
为什么会这样?
【问题讨论】:
-
我不确定这段代码应该做什么,但
j从0开始,这不是一个有效的索引。下一个值是0.015,当然,它也不是一个有效的索引。 -
@Stefan 我想做的是从 0 到 3 评估函数
f(x) = x*cos(x^2)。我想将结果保存在 200x1 数组中,然后使用PyPlot绘制它。根据您所说,我了解到for循环仅采用整数。我想我必须使用linspace做点什么。 -
@Echetlaeus:仅供参考,我认为您的问题没有反映出足够的努力(因此可能会被否决)。您是否在 Google 上搜索过
BoundsError()的含义和/或阅读过有关 Julia(或其他语言)中 for 循环和范围的信息,问题会很明显。 -
@cd98 我同意你的说法。过去,我在基本级别上玩过 MATLAB 和 FORTRAN。这是我唯一的编程经验。
标签: julia