1

ints 8 要素の長さ (array[]) の配列の要素を比較しようとしています。要素を 2 のセットで合計し、平均を 2 で割ります。たとえば、array[0] + array[1] / 2 と結果を 4 要素の長さの新しい配列に割り当てます。具体的には、それらを 2 のセットで比較して、どちらかまたは両方が 40 未満かどうかを確認します。どちらかが 40 未満の場合は、両方を加算して除算します。 2 を平均として、(40, array[i]) の最小値を配列に割り当てます。ただし、両方とも 40 を超える場合でも、両方の要素を追加して 2 で除算しますが、配列要素 [i] を私が得る数、最小の計算を気にしない

ここに私がこれまでに持っているものがあります

   for (int i = 0; i < array.length ; i++)
    {
        if (array[i] < 40 )
        {
            array2[j] = Math.min(35, array2[j]);
        }
    }

if ステートメントは正しいと思いますが、ブール値の引数はそうではありません。Array[] = 元の 8 要素の配列... array2[] = 計算され平均化された 4 要素の長さの配列。どうもありがとう

4

2 に答える 2

1

これはあなたが意味するものですか?うまくいけば、私は質問を理解しました。

for (int j = 0; j < array2.length; j++)
{
    double avg = (array[2 * j] + array[2 * j + 1]) / 2;
    if (array[2 * j] < 40 || array[2 * j + 1] < 40)
    {
        array2[j] = Math.min(avg, 40);
    } else {
        array2[j] = avg;
    }
}
于 2013-11-06T22:21:49.743 に答える
0

これはあなたが説明したロジックを捉えていると思います(?)

int[] test = {
    22,44,
    52,36,
    35,41,
    63,24
};
double[] newarr = new int[test.length/2];

for (int i = 0; i < newarr.length; i++){
    newarr[i] = (test[i*2] + test[i*2+1]) / 2;
}

与えます:

[33.0, 44.0, 38.0, 43.5]

正しい?

于 2013-11-06T22:22:11.197 に答える