Тригонометрични функции VB 6
Натъкнах се на следния проблем - при използването на тригонометричните функции sin и cos във VB 6 се получават грешни резултати т.е. например при изпълнение на кода :
Private Sub Command1_Click()
Label1.Caption = Cos(90)
Label2.Caption = Sin(90)
End Sub
резултатът за cos(90) => - 0,4480736161 ,а трябва да е 0
резултатът за sin(90) => 0,893996663600 ,а трябва да е 1.
Някой може ли да каже на какво се дължи това неправилно изчисляване на функциите.
Re: Тригонометрични функции VB 6
radians <-> degree
Const PI = 3.1415926535897932
Result = Sin(90 * PI / 180)
Result = Cos(90 * PI / 180)
Re: Тригонометрични функции VB 6
Re: Тригонометрични функции VB 6
Цитат:
Първоначално публикувано от shanto
Натъкнах се на следния проблем - при използването на тригонометричните функции sin и cos във VB 6 се получават грешни резултати т.е. например при изпълнение на кода :
Private Sub Command1_Click()
Label1.Caption = Cos(90)
Label2.Caption = Sin(90)
End Sub
резултатът за cos(90) => - 0,4480736161 ,а трябва да е 0
резултатът за sin(90) => 0,893996663600 ,а трябва да е 1.
Някой може ли да каже на какво се дължи това неправилно изчисляване на функциите.
Ами ти правилно си ги получил. Косинус от 90 е точно -0.448. Смята се в радиани.
Re: Тригонометрични функции VB 6
Това е така,аз го знам,но аз се опитвам да получа резултата в degree ,т.е при sin(90) да получавам 1, а не 0,44807....
Както се получава при изчисление с калкулатор.Мъчих се да открия зависимостта между радиани и дегрий,но не успявам да постигна точен резултат.
1 радиан е 180 дегрий
1 градус е Pi/180 радиана
не мога да получа точно съотношението между градус и дегрий.
Re: Тригонометрични функции VB 6
Ето връзките между трите мерни единици (радиан, градус и град):
http://bg.wikipedia.org/wiki/%D0%98%...B3%D1%8A%D0%BB
Направи си функция мySin(число,мярка), в която първо да преобразуваш зададеното число в радиани, в зависимост от мярката. Функцията да връща синус от получените радиани.
И ползвай нея, вместо вградената.