CodeGym /Java блог /Случаен /Метод Math.cos() в Java
John Squirrels
Ниво
San Francisco

Метод Math.cos() в Java

Публикувано в групата
Математическият клас в Java съдържа много математически функции. Тригонометричните функции са сред най-важните функции за програмиране. Една от тези функции е Math.cos() .

Тригонометрия за програмиране?

Разбира се, има програмисти, които почти никога не срещат тригонометрични функции в работата си, но въпреки това за много задачи тези функции са изключително важни. Например за компютърна графика or логика на играта. По-специално, синусите и косинусите участват в така наречената ротационна матрица, която можете да използвате за завъртане на обекти и светове. И ако трябва да изчислите дължината на пътя по картата, тригонометричните функции могат да ви бъдат полезни.

Метод Math.cos() в Java

Методът double cos (double x) на клас Math връща косинусовата стойност на x , където x е аргумент, ъгъл в радиани . Ето декларация на метода Java.lang.Math.cos() :

double cos(double x)
Ако не ви е удобно да изчислявате ъгли в радиани, можете да използвате специалната функция за преобразуване на радиани в градуси:

double toDegrees(double angRad)
Има и обратна функция, която преобразува градуси в радиани, което също може да бъде полезно.

double toRadians(double angDeg)
Ето примерен code на java.lang.Math.cos() :

public class CosExample {
   public static void main(String[] args) {
       
       int x1 = 1;
       double x2 = 0.5;
       double x3 = Math.PI;

       //using java.lang.Math.cos() for 1, 0.5 and PI rad 

       System.out.println("cosine of " + x1 + " rads = " + Math.cos(x1));
       System.out.println("cosine of  " + x2 + " rads = " + Math.cos(0));
       System.out.println("cosine  " + x3 + " rads = " + Math.exp(x3));


       //here we declare an 60 degrees angle

       double degree = 60;
       //here we use Math.toRadians to convert 60 degrees to radians, use the cos() method
       //to calculate the cosine of 60 degrees angle and print the result out
       System.out.println("cosine of " + degree + " degrees = " + Math.cos(Math.toRadians(degree)));

   }
}
Резултатът е:
косинус от 1 рад = 0,5403023058681398 косинус от 0,5 рада = 1,0 косинус 3,141592653589793 рад = 23,140692632779267 косинус от 60,0 градуса = 0,50000000000000001

Някои специални случаи

В математиката има понятия за неопределена форма, положителна и отрицателна безкрайност. Число, разделено на 0,0, дава безкрайност, положителна or отрицателна в зависимост от положителността or отрицателността на това число. Можете да получите неопределена форма по различни начини. Например, ако се опитате да разделите нула на нула or безкрайност на безкрайност. В Java има специални константи от клас Double като Double.NaN (не е число, може да кажете, че е вид неопределена форма), Double.POSITIVE_INFINITY и Double.NEGATIVE_INFINITY. Методът Math.cos() се държи по специфичен начин, когато е изпequals пред тези три концепции. Ако аргументът е NaN or безкрайност, тогава Math.cos() е NaN. Нека имаме пример за code:

public class CosSpecialCases {

       public static void main(String[] args) {

           double positiveInfinity = Double.POSITIVE_INFINITY;
           double negativeInfinity = Double.NEGATIVE_INFINITY;
           double nan = Double.NaN;

           //The argument is positive infinity, the output is NaN
           System.out.println(Math.cos(positiveInfinity));

           //The argument is negative infinity, the output NaN
           System.out.println(Math.cos(negativeInfinity));

           //The argument is NaN, the output is NaN
           System.out.println(Math.cos(nan));
       }
   }
Резултатът е:
NaN NaN NaN

Задача за синус и косинус за начинаещи

Опитайте се да програмирате движението на стрелките на часовника с помощта на Math.cos() и Math.sin() . Можете също така да прикачите графики (с помощта на обработка, JavaFX or нещо друго) към тази задача и ще получите анимиран часовник.

Още четене:

Коментари
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION