Математичечні функції і константи
Клас 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.
Немає коментарів:
Дописати коментар