我试图在带有for循环的函数中使用2个数组,但我不知道语法,因为互联网上没有例子。我编写了没有函数的代码,但如果将其转换为函数,我当然会感激。输出是数组价格和数组succrate。提前谢谢。
length_of_arrays = 101
lower_limit = 0
steps_per_unit = 1
price1 = 10
succrate1 = 5
succrate2 = 7
price = Array{Float64, 1}(101)
succrate = Array{Float64, 1}(101)
for pr_A = 1:1:length_of_arrays
price[pr_A] = lower_limit + ((pr_A-1) / steps_per_unit)
if price[pr_A] == price1
succrate[pr_A] = succrate1
else
succrate[pr_A] = succrate2
end
end
答案 0 :(得分:2)
传入数组没有特殊语法。只需将它们作为参数传递给其他任何东西。数组将在函数中被修改(为了标记这一点,我遵循了在名称中使用最终!
的约定),因此不需要从函数中返回它们。
function calc_prices!(price, succrate, lower_limit, steps_per_unit, price1, succrate1, succrate2)
for pr_A in eachindex(price)
price[pr_A] = lower_limit + ((pr_A-1) / steps_per_unit)
if price[pr_A] == price1
succrate[pr_A] = succrate1
else
succrate[pr_A] = succrate2
end
end
end
len_of_arrays = 101
pri = Array{Float64, 1}(len_of_arrays)
succ = Array{Float64, 1}(len_of_arrays)
calc_prices!(pri, succ, 0, 1, 10, 5, 7)
println(pri[10])
println(succ[10])
答案 1 :(得分:0)
我在1中使用了i:length_of_array,因为嵌套for循环中的每个索引都产生了一个边界错误
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<a class="btn">select prev 4 consecutive elements</a>
<ul>
<li> 1st 4</li>
<li> 1st 4</li>
<li> 1st 4</li>
<li> 1st 4</li>
<li> 2nd 4</li>
<li> 2nd 4</li>
<li class="selected"> 2nd 4</li>
<li class="selected"> 2nd 4</li>
<li class="selected"> 3rd 4</li>
<li class="selected"> 3rd 4</li>
<li> 3rd 4</li>
<li> 3rd 4</li>
<li> 4th 4</li>
<li> 4th 4</li>
<li> 4th 4</li>
<li> 4th 4</li>
<li> 5th 5</li>
</ul>
我很乐意得到关于每个指数如何起作用或关于笛卡尔指数的答案。
另外,如何从modifyarrays中调用succrate!功能到另一个功能?