我有以下代码:
using Winston
function testConjecGeneral(n,numTrials)
rangeVec = 2.0
uppBound = zeros(length(rangeVec), 1)
count = 1
for alpha = rangeVec
uppBound(count) = n*renyi([0.25, 0.5, 0.25], alpha)
println("Upper bound: $(uppBound(count))")
count = count+1
end
end
当我尝试加载代码时,在命令提示符下使用include(“testConjecGeneral.jl”),我在参数列表中得到ERROR:syntax:missing comma or) 加载/home/ganesh/UROP/YuryJulia/testConjecGeneral.jl时,从第3行开始的表达式
有人可以帮我解决这个问题吗?
答案 0 :(得分:2)
uppBound(count) = n*renyi([0.25, 0.5, 0.25], alpha)
对我来说不合适。零返回一个数组,引用数组项的正确方法是方括号。正如现在所写,看起来它正在尝试调用函数。是否将该行更改为:
uppBound[count] = n*renyi([0.25, 0.5, 0.25], alpha)
解决问题?
答案 1 :(得分:0)
我认为这不是语法错误,但rangeVec
并不是您认为的那样。您将rangeVec
值Float64
分配给2.0
,然后将rangeVec
视为Array
,调用length(rangeVec)
并循环alpha = rangeVec
}。您的意思是rangeVec
是Array
还是Float64
?