дана структура с перечнем цены, веса и колличества (неких лекарств)... эл-ты можно добавлять и удалять... подсчитать надо сумарное и среднее значение цены, веса и колличества... сумарное подсчитать выходит, а среднее -нет...
void calc(apteka* stdar[])
{
float S_price=0, S_wght=0, S_numb=0;
int aver=0;
for (int i=0; i<nbofst; i++)
{
S_price=S_price+stdar[i]->price;
S_wght=S_wght+stdar[i]->weight;
S_numb=stdar[i]->number;
aver++;
}
printf("summary price %.0f weight preparatov %.0f summary number %.0f \n",S_price, S_wght, S_numb);
//вычесление среднего колличества
S_price=S_price/aver;
S_wght=S_wght/aver;
S_numb=S_numb/aver;
printf("average price %.2f weight preparatov %.2f average number %.2f \n",S_price, S_wght, S_numb);
};
да... оно на среднее не похоже... или у меня неправильное представление о среднем значении...
Не знаю... Должно вроде все вычисляться правильно... Хотя я не совсем понимаю, зачем тебе понадобилась лишняя переменная: aver? Она же всегда будет равна nbofst, если я ничего не упустил?
Можешь попробовать вот так:
S_price = S_price/(double)aver;
S_numb=stdar[i]->number;это опечатка или это на самом деле так делается? Тогда непонятно, зачем? Там же будет только последнее значение, все остальные потеряются...
S_numb=stdar[i]->number;