我将尝试解释我在这段代码中遇到的问题。
这个脚本在最多三个人时运行良好($numRows = 3)。
但是如果我只有四个人($numRows = 4),我需要像这样的东西:
在我的情况下可能不同的只是人数。更多信息请在这里查看。
这个脚本在最多三个人时运行良好($numRows = 3)。
$z=0;
$i=0;
$x=0;
do {
$total[] = (
${'contaH'.$z}[$i+0]*$final[$x+0]+
${'contaH'.$z}[$i+1]*$final[$x+1]+
${'contaH'.$z}[$i+2]*$final[$x+2]
);
$z++;
} while ($z<$numRows); //3
但是如果我只有四个人($numRows = 4),我需要像这样的东西:
$z=0;
$i=0;
$x=0;
do {
$total[] = (
${'contaH'.$z}[$i+0]*$final[$x+0]+
${'contaH'.$z}[$i+1]*$final[$x+1]+
${'contaH'.$z}[$i+2]*$final[$x+2]+
${'contaH'.$z}[$i+3]*$final[$x+3]
// if they are 5 persons ($numRows=5), here, should exists another row
);
$z++;
} while ($z<$numRows); //4
因此,问题是自动化这些变化与$numRows有关。
这里是矩阵代数的演示:
我想要的唯一一件事是将我的代码动态地放入一个人数函数中。
A | B | C | D
Person1
Person2
Person3
Person4
...
在我的情况下可能不同的只是人数。更多信息请在这里查看。
$contaH0
,$contaH1
等等?为什么不使用数组呢? - deceze$total[] = ()
应该有可变数量的求和。$total[] = (1), $total[] = (1+1), $total[] = (1+1+1), $total[] = (1+1+1+1), $total[] = (1+1+1+1+1)
。求和的数量随着$numRows
的函数而改变。我不能更清楚了 :S - Danieltotal[2] = 1 + 1 + 1
?如果您想对该数组中的所有值求和,那么为什么不使用数学方法呢? ($ sum = $ n *($ n +1)/ 2
) - Leonardo Herrera