このコードで問題があるかどうかを説明しようとします。配列内の合計を自動化
このスクリプトは、最大3人($ 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
しかし、私は唯一の4人を持っている場合($ 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
...
私の場合は何人かは人の数だけです。
詳細情報here
あなたの質問は全く不明です。あなたの質問を書いてください。 – diEcho
問題をより一般的な言葉で説明してください。複雑すぎるコードから何をしたいのか分かりません。あなたのデータ構造は何ですか?いくつかの変数 '$ contaH0'、' $ contaH1'などはありますか?代わりに配列を使用していないのはなぜですか? – deceze
上記のコードに問題はありません。私が実装したい唯一のものは、可変数の合計行です。 $ numRowsの数が3の場合、ループごとに3つの合計が必要です.4の場合は合計が4つ、5の場合は合計が5つ必要です。変更する必要があるのは$ numRowsの関数での合計数です – Daniel