// Funktion zur Berechnung der Summe von quadratischen Abweichungen
// In: CMyVektor mit drei Eintraegen.
double abweichung(CMyVektor parameter)
{
	vector<double> x(7);
	vector<double> y(7);
	x[0] = -1.5;
	x[1] = -1;
	x[2] = -0.5;
	x[3] = 0;
	x[4] = 0.5;
	x[5] = 1;
	x[6] = 1.5;
	////////////////////////////////////////////////
	// TODO: Hier Ihre individuellen Werte eintragen
	////////////////////////////////////////////////
	y[0] = 0.8;            // y-Wert an der Stelle -1.5
	y[1] = 0.2;            // y-Wert an der Stelle -1
	y[2] = -0.2;            // y-Wert an der Stelle -0.5
	y[3] = -0.5;            // y-Wert an der Stelle 0
	y[4] = -1;            // y-Wert an der Stelle 0.5
	y[5] = -0.4;            // y-Wert an der Stelle 1
	y[6] = 0.8;            // y-Wert an der Stelle 1.5
	///////////////////////////////////////////////

	double a, b, c;
	////////////////////////////////////////////////
	// TODO: Hier Ihre CMyVector-Zugriffsfunktion einsetzen
	////////////////////////////////////////////////
	a = parameter(0);     // parameter.getKomponent(0)
	b = parameter(1);     // parameter.getKomponent(1)
	c = parameter(2);     // parameter.getKomponent(2)
	///////////////////////////////////////////////

	// Summe der quadratischen Abweichungen zu
	// f(x) = a*x^2 + b*x + c
	// berechnen
	double sum = 0;
	double hilf;
	for (int i = 0; i < 7; i++)
	{
		//
		hilf = a * x[i] * x[i] + b * x[i] + c - y[i];
		sum += hilf * hilf;
	}
	////////////////////////////////////////////////
	// Falls Sie keine explizite Methode zum
	// Minimieren haben, können Sie hier auch -sum
	// zurückgeben.
	////////////////////////////////////////////////
	return sum;
}
