[英]EXCEL / VBA - function #VALUE error in spreadsheet
(我想计算从“n”个骰子投掷中获得“总和”的可能方法的数量(骰子有 1..k 的“k”面)。)
当我想在 excel 电子表格中使用这个 function 时,无论我尝试什么输入,我都会收到 #VALUE 错误。
我在同一个模块中有其他功能,在同一张工作表中使用,工作正常\
Function how_many_ways(n, k, sum)
If n = 0 Then
If sum = 0 Then
how_many_ways = 1
Else
how_many_ways = 0
End If
End If
If sum < 0 Or k * n < sum Or n > sum Then
how_many_ways = 0
End If
res = 0
For i = 1 To k
res = res + how_many_ways(n - 1, k, sum - i)
Next i
how_many_ways = res
End Function
它总是运行 for 循环,因此它无限循环。 尝试这个。
Function how_many_ways(n, k, sum)
If n = 0 Then
If sum = 0 Then
how_many_ways = 1
Else
how_many_ways = 0
End If
ElseIf sum < 0 Or k * n < sum Or n > sum Then
how_many_ways = 0
Else
res = 0
For i = 1 To k
res = res + how_many_ways(n - 1, k, sum - i)
Next i
how_many_ways = res
End If
End Function
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.