Newcomposers.ru

IT Мир
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Класс math java

Класс Math и пакет java.math

Класс Math содержит методы, связанные с геометрией и тригонометрией и прочей математики. Методы реализованы как static, поэтому можно сразу вызывать через Math.methodName() без создания экземпляра класса.

В классе определены две константы типа double: E и PI.

Популярные методы для тригонометрических функций принимают параметр типа double, выражающий угол в радианах.

  • sin(double d)
  • cos(double d)
  • tan(double d)
  • asin(double d)
  • acos(double d)
  • atan(double d)
  • atan2(double y, double x)

Существуют также гиперболические функции: sinh(), cosh(), tanh().

Из них хорошо знакомы возведение в степень — pow(2.0, 3.0) вернёт 8.0.

Также популярен метод для извлечения квадратного корня — sqrt(4.0). Если аргумент меньше нуля, то возвращается NaN. Похожий метод cbrt() извлекает кубический корень. Если аргумент отрицательный, то и возвращаемое значение будет отрицательным: -27.0-> -3.0.

  • abs() — возвращает абсолютное значение аргумента
  • ceil() — возвращает наименьшее целое число, которое больше аргумента
  • floor() — возвращает наибольшее целое число, которое меньше или равно аргументу
  • max() — возвращает большее из двух чисел
  • min() — возвращает меньшее из двух чисел
  • nextAfter() — возвращает следующее значение после аргумента в заданном направлении
  • nextUp() — возвращает следующее значение в положительном направлении
  • rint() — возвращает ближайшее целое к аргументу
  • round() — возвращает аргумент, округлённый вверх до ближайшего числа
  • ulp() — возвращает дистанцию между значением и ближайшим большим значением
  • copySign() — возвращает аргумент с тем же знаком, что у второго аргумента
  • getExponent() — возвращает экспоненту
  • IEEEremainder() — возвращает остаток от деления
  • hypot() — возвращает длину гипотенузы
  • random() — возвращает случайное число между 0 и 1 (единица в диапазон не входит)
  • signum() — возвращает знак значения
  • toDegrees() — преобразует радианы в градусы
  • toRadians() — преобразует градусы в радианы

Вычислим наибольшее и наименьшее числа из двух заданных значений.

Большие числа

Если вам не хватает точности основных типов для представления целых и вещественных чисел, то можно использовать классы BigInteger и BigDecimal из пакета java.math, которые предназначены для выполнения действий с числами, состоящими из произвольного количества цифр.

Для преобразования обычного числа в число с произвольной точностью (называемое большим числом) вызывается статический метод valueOf():

При работе с большими числами нельзя использовать привычные математические операции с помощью + или * и т.п. Вместо них следует использовать специальные методы add() (сложение), multiply() (умножение), divide() (деление) и т.д.

В обычной практике эти числа используются редко.

класс java.math и его методы | Комплект 1

Класс Math предоставляет математические функции для преобразования основных числовых операций, таких как экспоненциальные, логарифмические, квадратные корни и тригонометрические функции. cosh, sin, tan, abs, bitLength, умножить и многое другое. Реализации функций класса Math не возвращают побитовые одинаковые результаты. Следовательно, выполняйте лучшие реализации.

Декларация класса

Этот набор объясняет следующие методы:

методы

      signum ():метод java.math.signum () возвращает значение signum переданного аргумента.

    Замечания:

      Результат равен NaN, если передан аргумент NaN .;

    Синтаксис:

  1. round ():метод java.math.round () округляет переданный аргумент до ближайших десятичных разрядов.
    Примечание. Результат равен 0, если аргумент равен NaN.
    Синтаксис:
  2. Методmax ():java.math.max (double v1, double v2) возвращает большее значение из двух переданных значений аргумента.
    Этот метод просто сравнивает использование величины без учета каких-либо признаков.
    Синтаксис:

Java-код, объясняющий методы signum (), round (), max () в классе Math.

// Java-код, объясняющий методы класса Math
// signum (), round (), max ()

public class NewClass

public static void main(String args[])

// Использование метода signum ()

double x = 10.4556 , y = — 23.34789 ;

Читать еще:  Как восстановить учетную запись в windows 7

double signm = Math.signum(x);

System.out.println( «Signum of 10.45 = » + signm);

System.out.println( «Signum of -23.34 = » + signm);

// Использование метода round ()

double r1 = Math.round(x);

System.out.println( «Round off 10.4556 = » + r1);

double r2 = Math.round(y);

System.out.println( «Round off 23.34789 = » + r2);

// Использование метода max () для r1 и r2

double m = Math.max(r1, r2);

System.out.println( «Max b/w r1 and r2 = » + r2);

    1. log1p ():метод java.math.log1p () возвращает натуральный логарифм (переданный аргумент + 1).
      Синтаксис:
    2. ulp ():метод java.math.ulp () возвращает единицу наименьшей точности (ulp), т.е. наименьшее расстояние между двумя числами с плавающей запятой.
      Здесь это наименьшее расстояние ч / б аргумента и следующее большее значение.
      Синтаксис:

Java-код, объясняющий метод ulp (), log1p () в классе Math.

// Java-код, объясняющий методы класса Math
// ulp (), log1p ()

public class NewClass

public static void main(String args[])

// Использование метода ulp ()

double x = 34.652 , y = — 23.34789 ;

double u = Math.ulp(x);

System.out.println( «ulp of 34.652 : » + u);

System.out.println( «ulp of -23.34789 : » + u);

// Использование метода log ()

double l1 = Math.log1p(l);

System.out.println( «Log of (1 + 99) : » + l1);

l1 = Math.log( 100 );

System.out.println( «Log of 100 : » + l1);

Эта статья предоставлена Мохит Гупта . Если вы как GeeksforGeeks и хотели бы внести свой вклад, вы также можете написать статью с помощью contribute.geeksforgeeks.org или по почте статьи contribute@geeksforgeeks.org. Смотрите свою статью, появляющуюся на главной странице GeeksforGeeks, и помогите другим вундеркиндам.

Пожалуйста, пишите комментарии, если вы обнаружите что-то неправильное или вы хотите поделиться дополнительной информацией по обсуждаемой выше теме.

Класс Math

Класс Math содержит методы для выполнения основных числовых операций, таких как нахождение экспоненты, логарифма, квадратного корня и т. д.

Класс содержит две константы типа double: E и PI. Все методы в классе Math статичны.

abs(double a) — возвращает абсолютное значение (модуль) числа типа double.

abs(float a) — возвращает абсолютное значение (модуль) числа типа float .

abs(int a) — возвращает абсолютное значение (модуль) числа типа int.

abs(long a) — возвращает абсолютное значение (модуль) числа типа long.

acos(double a) — возвращает арккосинус значения. Возвращенный угол находится в диапазоне от 0 до pi.

asin(double a) — возвращает арксинус значения. Возвращенный угол в диапазоне от -pi/2 до pi/2.

atan(double a) — возвращает арктангенс значения. Возвращенный угол в диапазоне от-pi/2 до pi/2.

cbrt(double a) — возвращает кубический корень аргумента.

ceil(double a) — возвращает наименьшее целое число, которое больше аргумента.

copySign(double magnitude, double sign) — возвращает аргумент с тем же знаком, что у второго аргумента.

copySign(float magnitude, float sign) — возвращает аргумент с тем же знаком, что у второго аргумента.

cos(double a) — возвращает косинус аргумента.

cosh(double x) — возвращает гиперболический косинус аргумента.

decrementExact(int a) — возвращает значение аргумента уменьшенное на единицу.

decrementExact(long a) — возвращает значение аргумента уменьшенное на единицу.

exp(double a) — возвращает экспоненту аргумента.

floor(double a) — возвращает наибольшее целое число, которое меньше или равно аргументу.

hypot(double x, double y) — возвращает длину гипотенузы (sqrt(x 2 +y 2 )).

IEEEremainder(double f1, double f2) — возвращает остаток от деления f1 на f2.

incrementExact(int a) — возвращает значение аргумента увеличенное на единицу.

incrementExact(long a) — возвращает значение аргумента увеличенное на единицу.

log(double a) — возвращает натуральный логарифм (по основанию e).

log10(double a) — возвращает логарифм по основанию 10.

max(double a, double b) — возвращает больший из аргументов.

max(float a, float b) — возвращает больший из аргументов.

max(int a, int b) — возвращает больший из аргументов.

Читать еще:  Как восстановить учетную запись майкрософт на телефоне

max(long a, long b) — возвращает больший из аргументов.

min(double a, double b) — возвращает меньший из аргументов.

min(float a, float b) — возвращает меньший из аргументов.

min(int a, int b) — возвращает меньший из аргументов.

min(long a, long b) — возвращает меньший из аргументов.

multiplyExact(int x, int y) — возвращает произведение аргументов (x*y).

multiplyExact(long x, long y) — возвращает произведение аргументов (x*y).

negateExact(int a) — возвращает отрицательное значение аргумента.

negateExact(long a) — возвращает отрицательное значение аргумента.

pow(double a, double b) — возвращает значение первого аргумента, возведенное в степень второго аргумента (a b )

random() — возвращает случайное число от 0.0 (включительно) до 1 (не включительно).

rint(double a) — возвращает округленное значение аргумента.

round(double a) — возвращает округленное значение аргумента.

signum(double a) — возвращает знак аргумента.

signum(float a) — возвращает знак аргумента.

sin(double a) — возвращает синус аргумента.

sinh(double a) — возвращает гиперболический синус аргумента.

sqrt(double a) — возвращает квадратный корень аргумента.

subtractExact(int x, int y) — возвращает разность аргументов (x-y).

subtractExact(long x, long y) — возвращает разность аргументов (x-y).

tan(double a) — возвращает тангенс аргумента.

tanh(double a) — возвращает гиперболический тангенс аргумента.

toDegrees() — преобразует радианы в градусы.

toIntExact(long value) — преобразует аргумент типа long в int.

toRadians() — преобразует градусы в радианы.

Класс math java

В уроке 8 мы затронули логические операторы, они нам были необходимы для формирования логического выражения в условиях if. Этот урок будет посвящен математике в Java, и поэтому мы рассмотрим подробнее арифметические операторы и частично возможности класса Math.

Но для начала, выясним, что же такое операторы. Операторы это специальные символы, отвечающие за ту или иную операцию, например сложение, умножение, сравнение. Все операторы в Java можно разбить на 4 класса — арифметические, битовые, операторы сравнения и логические.

Арифметические операторы в Java

Для стандартных арифметических операций, таких как сложение, вычитание, умножение, деление в Java используются традиционные символы, к которым мы привыкли со школы:

Примечание: при операции деления, если оба аргумента являются целыми числами, то в результате получим целое число. Дробная часть, если такая имеется, отбросится. Если хотим получить число с дробной частью, то нужно, чтобы один из аргументов был типа double. Это можно указать в самом выражении при помощи добавления после числа .0 или .d. Пример:

В Java также имеется специальный оператор %, обозначающий остаток от делния.

Пример использования: дан массив целых чисел, вывести на консоль только те числа, которые делятся на 3.

Операции с присваиванием

Рассмотрим задачу вывода на экран 10 первых четных чисел чисел

мы можем записать сокращенно

+= это оператор сложения с присваиванием. Подобные операторы есть для всех основных 5 операций, рассмотренных выше

Пример использования: Найти факториал числа 7.

Инкрементирование и декрементирование

Инкремент, обозначается ++ и увеличивает значение переменной на единицу. Декремент обозначается — и уменьшает значение на единицу. С инкрементом и декрементом мы часто встречаемся в цикле for.

Инкремент и декремент бывают двух форм

Различие префиксной и постфиксной формы проявляется только тогда, когда эти операции присутствуют в выражениях. Если форма префиксная, то сначала произойдет увеличение (или уменьшение) переменной на единицу, а потом с новым значением будет произведены дальнейшие вычисления. Если форма постфиксная, то расчет выражения будет происходить со старым значением переменной, а переменная увеличится (или уменьшится) на единицу после вычисления выражения. Пример

В первом случае сначала переменная a увеличится на 1, потом произойдет вычисление всего выражения. Во втором случае произойдет вычисление выражения при старом значении b = 3, и после вычисления b увеличится на 1, на результат в postfix это уже не повлияет.

Читать еще:  Удалились файлы с рабочего стола как восстановить

Если вы поняли принцип работы постфиксного и префиксного инкремента/декремента, то предлагаю решить в уме такую задачу:

Вопрос: чему в итоге равны x и y? После того, как вы сделали предположение, проверьте его в java.

Задача со зведочкой. Дан код:

Какие числа будут выведены на экран? Почему? Разобраться самостоятельно.

Примечание: инкремент и декремент применяются только к переменной. Выражение вида 7++ считается недопустимым.

Математические функции и константы (класс Math)

Для решения задач нередко требуется использование математических функций. В Java такие функции включены в класс Math. Для того, чтобы использовать методы класса Math, нужно подключить его в начале .java файла с вашим кодом.

класс java.math и его методы | Комплект 1

Класс Math предоставляет математические функции для преобразования основных числовых операций, таких как экспоненциальные, логарифмические, квадратные корни и тригонометрические функции. cosh, sin, tan, abs, bitLength, умножить и многое другое. Реализации функций класса Math не возвращают побитовые одинаковые результаты. Следовательно, выполняйте лучшие реализации.

Декларация класса

Этот набор объясняет следующие методы:

методы

      signum ():метод java.math.signum () возвращает значение signum переданного аргумента.

    Замечания:

      Результат равен NaN, если передан аргумент NaN .;

    Синтаксис:

  1. round ():метод java.math.round () округляет переданный аргумент до ближайших десятичных разрядов.
    Примечание. Результат равен 0, если аргумент равен NaN.
    Синтаксис:
  2. Методmax ():java.math.max (double v1, double v2) возвращает большее значение из двух переданных значений аргумента.
    Этот метод просто сравнивает использование величины без учета каких-либо признаков.
    Синтаксис:

Java-код, объясняющий методы signum (), round (), max () в классе Math.

// Java-код, объясняющий методы класса Math
// signum (), round (), max ()

public class NewClass

public static void main(String args[])

// Использование метода signum ()

double x = 10.4556 , y = — 23.34789 ;

double signm = Math.signum(x);

System.out.println( «Signum of 10.45 = » + signm);

System.out.println( «Signum of -23.34 = » + signm);

// Использование метода round ()

double r1 = Math.round(x);

System.out.println( «Round off 10.4556 = » + r1);

double r2 = Math.round(y);

System.out.println( «Round off 23.34789 = » + r2);

// Использование метода max () для r1 и r2

double m = Math.max(r1, r2);

System.out.println( «Max b/w r1 and r2 = » + r2);

    1. log1p ():метод java.math.log1p () возвращает натуральный логарифм (переданный аргумент + 1).
      Синтаксис:
    2. ulp ():метод java.math.ulp () возвращает единицу наименьшей точности (ulp), т.е. наименьшее расстояние между двумя числами с плавающей запятой.
      Здесь это наименьшее расстояние ч / б аргумента и следующее большее значение.
      Синтаксис:

Java-код, объясняющий метод ulp (), log1p () в классе Math.

// Java-код, объясняющий методы класса Math
// ulp (), log1p ()

public class NewClass

public static void main(String args[])

// Использование метода ulp ()

double x = 34.652 , y = — 23.34789 ;

double u = Math.ulp(x);

System.out.println( «ulp of 34.652 : » + u);

System.out.println( «ulp of -23.34789 : » + u);

// Использование метода log ()

double l1 = Math.log1p(l);

System.out.println( «Log of (1 + 99) : » + l1);

l1 = Math.log( 100 );

System.out.println( «Log of 100 : » + l1);

Эта статья предоставлена Мохит Гупта . Если вы как GeeksforGeeks и хотели бы внести свой вклад, вы также можете написать статью с помощью contribute.geeksforgeeks.org или по почте статьи contribute@geeksforgeeks.org. Смотрите свою статью, появляющуюся на главной странице GeeksforGeeks, и помогите другим вундеркиндам.

Пожалуйста, пишите комментарии, если вы обнаружите что-то неправильное или вы хотите поделиться дополнительной информацией по обсуждаемой выше теме.

Ссылка на основную публикацию
Adblock
detector