[ Predrag Damnjanovic @ 06.02.2002. 18:20 ] @
sin(a) daje ponekad ispravnu vrednost, a ponekad negativnu vrednost.

Primer:

float result;
double a;
for (a=1;a<10;a++){
result = sin(a);
printf("sin(%f) = %f\n", a, result);
}

Daje:

sin(1.000000) = 0.841471
sin(2.000000) = 0.909297
sin(3.000000) = 0.141120
sin(4.000000) = -0.756802
sin(5.000000) = -0.958924
sin(6.000000) = -0.279415
sin(7.000000) = 0.656987
sin(8.000000) = 0.989358
sin(9.000000) = 0.412118

Da li je ovo normalno?
[ Dragi Tata @ 06.02.2002. 18:27 ] @
Rezultati su sasvim dobri.

Imaj na umu da su argumenti sin() u radijanima, a ne stepenima.
[ Predrag Damnjanovic @ 06.02.2002. 18:37 ] @
Evo sta hocu.

........*
....../
...../
..../
.../
.O---------

Ja sam O.
Znam ugao pod kojom gledam zvezdu, i znam razdaljinu izmedju mene i zvezde.
Hocu da izracunam recimo x i y kordinatu zvezde.
To bi trebalo da bude ovako:
x=sin(alfa)*r;
y=cos(alfa)*r;

Ali...
[ Dragi Tata @ 06.02.2002. 18:45 ] @
Kao što rekoh, vodi računa da su argumenti trigonometrijskih funkcija u radijanima, a ne stepenima.

x=sin(alfa * PI/180)*r;

ako je alfa u stepenima
[ Predrag Damnjanovic @ 06.02.2002. 21:09 ] @
Fala ti dragi moj tatice, prorade, napokon!