четвер, 19 липня 2012 р.

Математичні функції і константи

Математичечні функції і константи
Клас Math містить набор математичних функций, які необхідні для розв'язання задач.
Щоб добути квадратний корінь із числа, застосовують метод sqrt.
double х = 4;
double у = Math.sqrt(х);
System.out.println(у); // Друкує число 2.0.

Между методами println и sqrt есть небольшая разница. Метод println дей­ствует на объект System, out, имея второй параметр у — число, подлежащее вы­воду. (Напомним, что out — это объект, определенный в классе System и пред­ставляющий собой стандартное устройство вывода.)
В то же время метод sqrt в классе Math не работает ни с одним объектом. Он имеет единственный параметр х — число, из которого нужно извлечь корень. Такие методы называются статиче­скими.

В языке Java нет оператора возведения в степень: для этого нужно использовать метод pow из класса Math.
Оператор
double у = Math.pow(x,a) ;
присваивает переменной у значение переменной х, возведенное в степень а.
Оба параметра метода pow, а также возвращаемое им значение имеют тип double.
Класс Math содержит обычные тригонометрические функции:
Math.sin
Math.cos
Math.tan
Math.atan
Math.atan2
Math.toDegrees(n) — обчислює градусну міру кута n радіан.
Math.toRadians(n) — обчислює радіанну міру кута n градусів.

Кроме этого, в него включены экспоненциальная и обратная к ней логарифмиче­ская функции (натуральный логарифм):
Math.exp
Math.log
Math.log10(n) — обчислює значення десяткового логарифму числа n.

В классе определены также две константы
Math.PI
Math.E,
обозначающие аппроксимации чисел Пи и е.
Для повышения своей производительности функции в классе Math используют про­граммы из встроенного модуля для вычислений с плавающей точкой.
Если точность вычислений важнее скорости их выполнения, используйте класс strictMath.
Он реализует алгоритмы из библиотеки "Freely Distributable Math Library" ("Свободно распространяемая библиотека математических функций") fdlibm, гарантирующей идентичность результатов на всех платформах.
Исходные тексты программ, реали­зующих эти алгоритмы, можно найти на web-странице http://www.netlib.org/fdlibm/index.html. (В библиотеке fdlibm дается несколько определений каждой функции, класс StrictMath следует версии IEEE754, имена функций в которой на­чинаются с буквы "е".)


Math.abs()  обчислює модуль. Аргумент может мати тип int, float, double или long. Тип byte і short перетворюється  в int.
Приклад:
int num =  -1 ;
Math.abs(num);         // returns 1


 Math.floor()  повертає ціле число, якщо воно менше чи дорівнює параметру.
Приклад:
Math.floor(-5.6)     returns -6.0
Math.floor(201.1)     returns 201.0
Math.floor(100)     returns 100.0


Math.ceil(n) — повертає найближче до числа n справа число з нулевою дробовою частиною Наприклад, Math.ceil(3.4) в результаті поверне 4.0, Math.ceil(9.4) поверне 10.0

Math.round()  округлює аргумент з плавающей крапкою до самого близького числа.
Наприклад, запис Math.round (34.5) повертає 35, Math.round(9.5) повертає10, Math.round(9.5-0.001) поверне 9.

Math.max()  знаходить більше із двух значень. Аргумент може мати тип даних int, long, double і float.
Приклад:
Math.max(100,200)     returns 200

Math.min()  знаходит менше із двух значень. Аргумент може мати тип даних int, long, double і float.
Приклад:
Math.min(100,200)     returns 100    

 Math.random() повертає випадкове число між 0.0 и 1.0 типу double.



Немає коментарів:

Дописати коментар