[ Sasha++ @ 03.05.2004. 12:30 ] @
Koja je funkcija invertna funkciji sinf(...)?

Znaci, da od datog sinusa ugla dobijem taj ugao
[ filmil @ 03.05.2004. 12:54 ] @
http://www.squarebox.co.uk/cgi...ver/usr/share/man/man3/asinl.3
[ Nedeljko @ 04.05.2004. 03:37 ] @
Matematički gledano, sinusna funkcija nije invertibilna jer nije bijekcija. Sinus bilo kog celobrojnog umnoška broja pi je nula, a inverzna funkcija u tački nula ne može da uzme sve te vrednosti, jer funkcija u bilo kojoj tački domena ima tačno jednu vrednost. No, suženje sinusa na interval [-pi/2,pi/2] je bijekcija tog skupa na interval [-1,1], pa ima inverznu funkciju koja se zove arkus sinus i obeležava arcsin. Dakle, arkus sinus broja x iz intervala [-1,1] je jedinstveni broj y iz intervala [-pi/2,pi/2] za koji važi sin(y)=x.

U jeziku C, pa samim tim i C++ imaš standardno zaglavlje math.h sa sledećim funkcijama za računanje arkus sinusa:

double asin(double x);
float asinf(float x);
long double asinl(long double x);
[ blaza @ 06.05.2004. 16:13 ] @
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;
}
[ ***ArChAnGeL*** @ 08.05.2004. 01:38 ] @
Probaj sa Tejlorovim razvojom ako znas sta je to.Mislim da moze.
[ slavkot @ 08.05.2004. 11:27 ] @
Mozda ti ovo pomogne :

#include <stdio.h>
#include <stdlib.h>
#include <math.h>

char broj[MAX_PATH];
double broj1,broj2,broj3,pi1;
int main(int argc, char *argv[])
{
printf("Unesi vrijednost : ");
gets(broj);
broj1=atof(broj);
broj2=acos(broj1);//u radijanima
broj3=asin(broj1);//u radijanima
pi1=180/(acos(-1));// Ne znam ima li vec pi definisano,pa ga priblizno dobijemo kao acos(-1)
printf("arccos(%f)= %f\n",broj1,broj2*pi1);//Ugao u stepenima
printf("arcsin(%f)= %f\n",broj1,broj3*pi1);//Ugao u stepenima
system("PAUSE");
return 0;
}

[Ovu poruku je menjao slavkot dana 08.05.2004. u 14:43 GMT]
[ blaza @ 08.05.2004. 11:38 ] @
I ovo:
[ stefic_kg @ 13.10.2008. 22:20 ] @
Mene interesuje kako bih priblizno izracunao sinus i cosinus nekog ne standardnog ugla?
Znam da treba primenom Tejlorovog reda.... ali da li moze neko malo to da objasnis?
Ucio sam redove na faxu.... ali ne znam ih bas najbolje.... a nasao sam na wikipediji ali mi bas nije jasno...

http://en.wikipedia.org/wiki/Taylor_series
http://de.wikipedia.org/wiki/Sinus
http://sh.wikipedia.org/wiki/Trigonometrijska_funkcija

Konkretno me ovo interesuje da li ovako: sin(x) = x - (x^3/3!) + (x^5/5!) - (x^7/7!) +- ....

I kako da sve ovo primenim u C-u, ako je ovako dobro?