Неточный double
От: O-Sam Россия  
Дата: 11.10.05 12:03
Оценка:
Не могу посчитать сумму чисел

int main()
{
    /* source data from excel
108,71239
1,21710
32,97870
81,96990
103,74735
135,49768
135,23260
65,00000
2156,32959
32,81410
30,28987
*/
    double total, v[11];
    total = 0;

    v[0]  = 108.71239;
    v[1]  = 1.21710;
    v[2]  = 32.97870;
    v[3]  = 81.96990;
    v[4]  = 103.74735;
    v[5]  = 135.49768;
    v[6]  = 135.23260;
    v[7]  = 65.00000;
    v[8]  = 2156.32959;
    v[9]  = 32.81410;
    v[10] = 30,28987;
    for (int i = 0; i < 11; i++)
        total += v[i];

    printf("%.5lf\n",total); // must be 2883.78928
    getch();
    return 0;
}

На выходе вместо 2883.78928 получаю 2883.49941
В чём дело?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.