1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
|
#include <iostream>
#include <math.h>
#include <stdio.h>
using namespace std;
int main(){
long double wert=0.0 , wertneu = 0.0;
long double vier = pow (wert, 4); //wert wird hier mit 0 initialisiert und bleibt den rest des Programms auf 0
long double drei = pow (wert, 3);
long double zwei = pow (wert, 2);
cout << "Das Programm berechnet die Nullstellen der Funktion. x-> x - 11x^2 +6x^4 mit dem Newotn-Verfahren. \n Startwert eingeben: " << endl;
cin >> wert ; //Startwert abfragen
getchar();
//schleife läuft, wenn wertneu dann richtig berechnet wird wahrscheinlich unendlich
//da wertneu sich immer weiter von wert entfernt. wert wird ja nicht angepasst...
while ( (wertneu - wert) > 0.0001 || (wertneu - wert) < -0.0001){ // solange der Wert wahr ist, soll weitergerechnet werden
//hier fehlte das Zeichen * vor "(drei)"
//wertneu = wert - 0, wegen der deklaration oben
wertneu = wert - (11.0 * (zwei) + 6.0 * (vier)) / (1 - 22.0 * (wert) + 24.0 * (drei)); // die eigentliche Funktion
cout << wertneu << endl;
}
cout << "Die Arbeit ist getan.";
getchar();
return 0;
}
|