Hallo.
Ich bin zzt. dabei ein Programm zu schreiben, wo ich durch das Annäherungsverfahren die Nullstellen der Funktion 7*x^5+ 7*x^2+25 herauszufinden. Hier mein bis jetzt geschriebenes Programm:
/*
Name: Marc Schnoor
Datum: 03.06.2009
Version: 1.0.0
Funktion: Nullstellen einer Funktion bestimmen durch das
Anaehrungsverfahren
*/
#include <stdio.h>
double solve (double lx, double rx, double (*fp) (double));
double f1 (double x)
{
return ((7*(x*x*x*x*x))+ (7*(x*x))+25); //f1 = 7*x^5+7x^2+25
}
int main (int ac, char *av [])
{
double untere_grenze;
double obere_grenze;
double nullstelle;
double mx;
double x;
printf ("Bitte geben Sie die Untere Grenze an.\n");
scanf ("%f",&untere_grenze);
printf ("Bitte geben Sie die Obere Grenze an.\n");
scanf ("%f",&obere_grenze);
mx =0.5 * (untere_grenze + obere_grenze);
obere_grenze = mx;
x = mx;
if (*f1 == 0)
{
printf ("Nullstelle bei %lf gefunden", mx);
}
else
{
mx = 0.5 * (untere_grenze + obere_grenze);
untere_grenze = mx;
x = mx;
}
if (*f1 == 0)
{
printf ("Nullstelle bei %lf gefunden", mx);
}
/*
if (untere_grenze > 0 && obere_grenze > 0)
{
printf ("Die obere Grenze und untere Grenze sind beide positiv.\n");
}
*/
system ("pause");
}
Unser Lehrer hat uns einen Tipp gegeben, dass wir ein Programmteil auslagern soll, welches dann die Annäherung macht.
Solche Werte soll das Programm mitgeliefert bekommen. lx = untere Grenze, rx = obere Grenze. Was der letzte Teil soll, weiss ich nicht.
"double solve (double lx, double rx, double (*fp) (double));
Komme zzt. nicht weiter wie ich weiter programmieren soll. Bitte um Hilfe.
Mfg Marc