Cześć! Mam do napisania funkcję, która obliczy średnią ważoną wg tego wzoru: a1p1 + a2p2 +···+ anpn + an+1(1−p1 −p2 −···−pn). Jej jedyny określony argument to n. Pozostałe argumenty to ciąg liczb typu double postaci a1,p1,a2,p2,...,an,pn,an+1. Ponadto funkcja ma sprawdzać podane warunki pi >= 0 dla i = 1,2,...,n; pi <= 1 dla i = 1,2,...,n; p1 + p2 +···+ pn <= 1. Przygotowałem sobie taki oto szkielet funkcji, ale nie za bardzo wiem, jak go wypełnić. Ktoś mógłby pomóc?
double sredniaWazona(unsigned int n,...)
{
va_list ap;
unsigned int i;
double *wagi=new double[n];
double *oceny=new double[n+1];
va_start (ap, n);
for(int i=va_arg(ap,unsigned int);i<n;i=va_arg(ap,unsigned int))
{
}
va_end (ap);
}