我有四个HTML选择字段

如何通过设置0、1、2、3或全部4 fields,找到用户可以进行的不同数量的组合。我想为所选的switch cases制作parameters。
编辑:
例如,用户可以选择
类别、渠道、区域、国家
OR类别、渠道、区域
OR类别、渠道
etc ...发布于 2016-11-17 09:25:27
如果您想对数学有更深入的理解,但是如果我正确地理解了您,那么您只需要基本数量的组合,当您可以选择其中之一时,请查看组合与排列:
如果顺序不重要,那么使用公式P(n,r)=n!(n−r)!
其中,n是选择的数量,r是您可以选择的数量,但是由于它是组合框,所以您只需要使用r=1和n作为选项,并将每个答案与所有其他选项相乘。
因此,在这种情况下,您只需乘以每个组合框的选择数量,就可以得到总数。
例如5 Categories * 4 Channels * 10 Regions * 2 Countries = 400 choices
编辑:
如果一个字段是可选的,它只意味着它有一个额外的选项,即不指定一个值,这意味着您只需要将1添加到每个值,即
如果类别和通道是可选的:(5+1)*(4+1)*10*2 = 600选项
如果它们都是可选的:(5+1)*(4+1)*(10+1)*(2+1) = 990选项
如果您想使用switch,请考虑将每个字段放入自己的switch中以简化操作( switch语句的数量将等于字段数和case关键字之和,所有字段的选项之和(不包括选项))。
如果您想对数学有更深入的理解,但是如果我正确地理解了您,那么您只需要基本数量的组合,当您可以选择其中之一时,请查看组合与排列:
如果顺序不重要,那么使用公式P(n,r)=n!(n−r)!
其中,n是选择的数量,r是您可以选择的数量,但是由于它是组合框,所以您只需要使用r=1和n作为选项,并将每个答案与所有其他选项相乘。
因此,在这种情况下,您只需乘以每个组合框的选择数量,就可以得到总数。
例如5 Categories * 4 Channels * 10 Regions * 2 Countries = 400 choices
编辑2:
如果一个字段是可选的,它只意味着它有一个额外的选项,即不指定一个值,这意味着您只需要将1添加到每个值,即
如果类别和通道是可选的:(5+1)*(4+1)*10*2 = 600选项
如果它们都是可选的:(5+1)*(4+1)*(10+1)*(2+1) = 990选项
如果您想使用switch,请考虑将每个字段放入自己的switch中以简化操作( switch语句的数量将等于字段数和case关键字之和,所有字段的选项之和(不包括选项))。
编辑3:
如果您只想知道用户可以选择的字段的数量(而不是值),例如,此人可以选择填写“类别”和“通道”,那么您将使用组合:
C(n,r)=n!(n−r)!r!
有4个选项,您可以选择none +有4个选项,您可以选择1. (n是选择,r是您可以选择的)
C(4,0)+C(4,1)+C(4,2)+C(4,3)+C(4,4)
4!/(4-0)!0! + 4!/(4-1)!1! + 4!/(4-2)!2! + 4!/(4-3)!3! + 4!/(4-4)!4!
1 + 4 + 6 + 4 + 1 = 16
还请看一下二项式定理。它很适合这个问题。
https://stackoverflow.com/questions/40650819
复制相似问题