Obliczanie pierwiastka-Metoda Stefensona

0

Witam
Jako że jestem początkujący w c++ mam napisac program który będzie liczył pierwiastek równania tzw Metodą Stefensona. W internecie nie ma dużo na ten temat jednak udało mi się coś znaleźć i napisałem program ale nie działa.

Dokładna treść zadania:
Obliczyć pierwiastek równania nieliniowego cos(x)+1/(x+2)=0 Metodą Stefensona.

Kod źródłowy:

 
#include <conio.h>
#include <iostream>
#include <cmath>

using namespace std;

double licz (double arg){
	return -1/cos(arg)-2;
}

double licz2 (double arg, double arg2){
	return arg-arg2;
}

double licz3 (double arg, double arg2, double arg3){
	return arg-(arg2/(arg3-arg2));
}


int main (){
double x=0.;
double const blad=0.001;
do{
	licz (x);
	licz2 (x,licz(x));
	licz3 (x,licz(x),licz2(x,licz(x)));


}while (fabs((licz3 (x,licz(x),licz2(x,licz(x)))-x)/(licz3 (x,licz(x),licz2(x,licz(x)))))>blad);

cout<<licz3;


getch ();
return 0;
}

Program nie wychodzi w ogóle z pętli do.

Z góry dziękuje za pomoc
Pozdrawiam ;)

0

skoro x się nie zmienia

0 użytkowników online, w tym zalogowanych: 0, gości: 0