animal_magicの答えは正しいです。最小から最大の数字を追加する必要がありますが、その理由を示す例を挙げたいと思います。
浮動小数点形式で作業していると仮定すると、3桁の驚異的な精度が得られます。次に、10個の数字を追加します。
[1000, 1, 1, 1, 1, 1, 1, 1, 1, 1]
もちろん、正確な答えは1009ですが、3桁の形式では取得できません。3桁に丸めると、得られる最も正確な答えは1010です。最小から最大まで加算すると、各ループで次のようになります。
Loop Index s
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 1009 -> 1010
したがって、私たちのフォーマットに対して可能な限り正確な答えを得ることができます。ここで、最大から最小に追加すると仮定しましょう。
Loop Index s
1 1000
2 1001 -> 1000
3 1001 -> 1000
4 1001 -> 1000
5 1001 -> 1000
6 1001 -> 1000
7 1001 -> 1000
8 1001 -> 1000
9 1001 -> 1000
10 1001 -> 1000
浮動小数点数は各操作の後に丸められるため、すべての加算は切り捨てられ、エラーが正確に1から9に増加します。ここで、追加する数字のセットに1000があり、次に100の1の数、または100万の数があると想像してください。本当に正確にするには、最小の2つの数値を合計し、その結果を数値のセットに再分類することに注意してください。