A resposta de animal_magic está correta em que você deve adicionar os números do menor para o maior, no entanto, quero dar um exemplo para mostrar o porquê.
Suponha que estamos trabalhando em um formato de ponto flutuante que nos fornece três dígitos impressionantes de precisão. Agora queremos adicionar dez números:
[1000, 1, 1, 1, 1, 1, 1, 1, 1, 1]
É claro que a resposta exata é 1009, mas não podemos obtê-la em nosso formato de 3 dígitos. Arredondando para 3 dígitos, a resposta mais precisa que obtemos é 1010. Se adicionarmos o menor ao maior, em cada loop, obtemos:
Loop Index s
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 1009 -> 1010
Portanto, obtemos a resposta mais precisa possível para o nosso formato. Agora vamos supor que adicionamos do maior para o menor.
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
Como os números de ponto flutuante são arredondados após cada operação, todas as adições são arredondadas, aumentando nosso erro de 1 para 9 do exato. Agora imagine se o seu conjunto de números a adicionar tivesse 1000 e, em seguida, cem 1 ou um milhão. Observe que, para ser realmente preciso, você deseja somar os dois números menores e, em seguida, recorrer o resultado ao seu conjunto de números.