ArcSin mozes izracunati i primenom osnovnih matematickih operacija:
Code:
const long double GR = -100.0; //vrednost koju funkcija vraca kada je |X| > 1
const long double PI = 3.1415926535897932384626433832795028841950; //...
const long double G = 1e-30;
long double ArkusSinus(long double X){
long double M, S, Z, T;
M = (X >= 0.0) ? +1.0 : -1,0;
if (M * X == 1.0)
return M * PI / 2.0;
if (M * X > 1.0)
return GR;
S = Z = X;
S *= X;
int N = 1;
while(M * X > G){
T = (long double) (N++ << 1);
Z += X *= S * (T - 1.0) * (T - 1.0) / T / (T + 1.0);
}
return Z;
}
If you want to argue with me, learn to google faster.