Pierwiastkowanie

0

Jak można obliczyć pierwiastek drugiego stopnia z liczby ?

dziękuje !!!

0

sqrt(x) //moduł math

0

pow(liczba,0.5);

0

Jeśli nie chcesz korzystać z funkcji języka , możesz też sam obliczyć pierwiastek , za pomoca iteracji :
x=a^0.5
x^2=a;
x=a/x
x+x=a/x+x
x=1/2(x+a/x)
mozna sobie wprowadzic indeksy : xn1 = x z indeksem n-1 , oraz xn = x z indkesem n
xn=1/2(xn1+a/xn1)
bierzemy jakieś początkowe xn1 i możemy obliczyć pierwiastek z określoną dokładnością . najpierw liczymy xn , potem sprawdzamy roznice miedzy xn1 i xn ( dokładność ) , jak nas dokladnosc nie zadowala to za xn1 podstawiamy xn i liczymy dalej ...
Oto algorytm :
[code]
double xn,xn1=0,a,dokladnosc;
dokladnosc=0.0001; //tu ustawiamy dokladnosc
a=141; //liczba z ktorej wyciagy pierwiastek
xn=3; //początkowe xn1
while( fabs(xn-xn1) > dokladnosc )
{
xn1=xn;
xn= 0.5 * ( xn1 + a/xn1 );
}
[/code]

przypominam , że przy liczeniu pierwiastka trzeba dołączyć biblioteke math.h

0

Jeśli nie chcesz korzystać z funkcji języka , możesz też sam obliczyć pierwiastek , za pomoca iteracji :
(..)

To jeżeli już się tak bawić, to jeżeli ma się dostęp do asma i procesora obsługującego 3D Now! to podobnym algorytmem (Newton-Raphson) operując na PFRSQRT można obliczyć pierwiastek kw. z liczby z dokładnością do 15 lub 24 bitów.

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