Zistenie uhla v Pascale cez gon. funkcie
Zistenie uhla v Pascale cez gon. funkcie
Dá sa v Pascale zistiť veľkosť uhla pomocou goniometrických funkcií? Lebo ani za svet nemôžem prísť na to, ako by sa to dalo urobiť spätne, nie iba vypočítať, napr. sínus uhla, ale aj zistiť veľkosť uhla z pomeru 2 strán trojuholníka.
Veď pokiaľ viem tangens uhla, ktorý je napr. 1, tak ako zistím, že takýto tangens prislúcha 45 stupňom, resp. pi/4?
Keď som priradil premennej arctan (1), tak to vypísalo nejakých 0,7854...
Takže vedel by si mi poradiť ako?
//Tak som na to nakoniec prišiel, musel som to ešte vydeliť pi a vynásobiť 180
Keď som priradil premennej arctan (1), tak to vypísalo nejakých 0,7854...
Takže vedel by si mi poradiť ako?
//Tak som na to nakoniec prišiel, musel som to ešte vydeliť pi a vynásobiť 180
-
audiotrack
VIP
- Príspevky: 25958
- Registrovaný: 09 sep 2005, 18:39
- Kontaktovať používateľa:
Kód: Vybrať všetko
function uhol(x; y : real) : real;
var vysl : real;
begin
if x<>0 then vysl := arctan(y/x)/ pi * 180;
if x < 0 then vysl := vysl - 180;
if vysl < 0 then vysl := vysl + 360;
uhol := vysl;
end; No ale ešte by ma zaujímalo, prečo mi zle program vypisuje sínusy uhlov? Dal som ich vypísať od 1 po 90 stupňov a vypisuje veľmi záhadné čísla, napr. 45 - 0,8509; 90 - 0,8940. Pri niektorých dokonca mínusové hodnoty. Ako je to možné? 
//Ach, som asi blbý, musím to prehadzovať ešte na radiány
Tak na ten arctan som už prišiel, ale teraz by som potreboval tiež arcsin, ktorý by sa mal zapísať takto : arctan (sin (x)/sqrt (1-sqr(sin (x)))/pi*180, ale nevypisuje mi to presne ten uhol.
//Ach, som asi blbý, musím to prehadzovať ešte na radiány
Tak na ten arctan som už prišiel, ale teraz by som potreboval tiež arcsin, ktorý by sa mal zapísať takto : arctan (sin (x)/sqrt (1-sqr(sin (x)))/pi*180, ale nevypisuje mi to presne ten uhol.
Správny tvar tej funkcie pre arcsin vypočitaný pomocou arctan si pozri napr. tu http://en.wikipedia.org/wiki/Inverse_tr ... c_function