Problem z algorytmem Newtona-Raphsona C++

Witam

Muszę napisać programik obliczający przybliżoną wartość pierwiastka kwadratowego, w programie ma być przypisana dokładność obliczeń [zmienna eps] tylko mam problem prawdopodobnie z warunkiem dla pętli do…while :frowning:

próbuje to już od 3 dni poprawić i ciągle to samo… [nie podaje wyniku w przybliżeniu podanym w eps]

[przy cout tymczasowo jest sqrt(liczba), żeby łatwiej można było sprawdzić poprawność obliczeń]

Bardzo bym prosił kogoś o sprawdzenie, może ktoś z was znajdzie tu błąd…

jeżeli podobny wątek już był na forum, to przepraszam, ale w wyszukiwarce nie znalazłem na ten temat…

#include

#include

#include

using namespace std;



int main()

{

    int ile=2;

    double eps,liczba, pierw, pierwp;

    scanf("%lf",&liczba);

    eps=0.001;

    pierw=liczba;

    do

    {

    pierwp=pierw;

    pierw=(pierwp + liczba/pierwp)/2;


    ile--;


    }while (ile>0 and pierwp-pierw>eps);

    cout<



    system("pause");

    return 0;


}