Clase Java.lang.StrictMath en Java | Serie 1

Los métodos de StrictMath Class ayudan a realizar operaciones numéricas como el cuadrado, la raíz cuadrada, el cubo, la raíz cúbica, las operaciones exponenciales y trigonométricas.

Declaración :

public final class StrictMath
   extends Object

¿Argumento NaN?
Una constante que contiene un valor Not-a-Number (NaN) de tipo double. Es equivalente al valor devuelto por Double.longBitsToDouble(0x7ff8000000000000L).

Métodos de la clase lang.math:
1. acos(): el método java.lang.StrictMath.acos() devuelve el valor del arco coseno del argumento pasado.
el arco coseno es el coseno inverso del argumento pasado.
acos(arg) = cos -1 de arg

Caso especial: el resultado es NaN, si el argumento es NaN o su valor absoluto es mayor que 1. 

Sintaxis:

public static double acos(double a)
Parameters:
a - the argument whose arc cosine value we need.
    argument is taken as radian    
Returns:
arc cosine value of the argument.

2. abs() : el método java.lang.StrictMath.abs() devuelve el valor absoluto de cualquier tipo de argumento pasado. Este método puede manejar todos los tipos de datos.

  • El resultado es cero positivo, si el argumento es cero positivo o cero negativo.
  • El resultado es infinito positivo si el argumento es infinito.
  • El resultado es NaN, si el argumento pasado es NaN.

Sintaxis:

public static datatype abs(datatype arg)
Parameters:
arg - the argument whose absolute value we need
Returns:
absolute value of the passed argument.

3. toRadians() : el método java.lang.StrictMath.toRadians(doble grado) convierte el argumento (grado) en radianes.
Nota: la clase StrictMath generalmente toma radianes como entrada, lo que es muy diferente en las aplicaciones de la vida real, ya que los ángulos generalmente se representan en grados. 

Sintaxis:

public static double toRadians(double deg)
Parameters:
deg - degree angle needs to be in radian.
Returns:
radians equivalent of the degree-argument passed.

Código Java que explica el método abs(), acos(), toRadians() en la clase lang.StrictMath. 

Java

// Java program explaining lang.StrictMath class methods
// abs(), acos(), toRadians()
 
import java.lang.*;
public class NewClass
{
    public static void main(String[] args)
    {
        // Declaring the variables
        int Vali = -1;
        float Valf = .5f;
 
        // Printing the values
        System.out.println("Initial value of int  : " + Vali);
        System.out.println("Initial value of int  : " + Valf);
 
 
        // Use of .abs() method to get the absoluteValue
        int Absi = StrictMath.abs(Vali);
        float Absf = StrictMath.abs(Valf);
 
        System.out.println("Absolute value of int : " + Absi);
        System.out.println("Absolute value of int : " + Absf);
        System.out.println("");
 
        // Use of acos() method
        // Value greater than 1, so passing NaN
        double Acosi = StrictMath.acos(60);
        System.out.println("acos value of Acosi : " + Acosi);
        double x = StrictMath.PI;
 
        // Use of toRadian() method
        x = StrictMath.toRadians(x);
        double Acosj = StrictMath.acos(x);
        System.out.println("acos value of Acosj : " + Acosj);
         
    }
}

Producción :

Initial value of int  : -1
Initial value of int  : 0.5
Absolute value of int : 1
Absolute value of int : 0.5

acos value of Acosi : NaN
acos value of Acosj : 1.5159376794536454

4. cbrt() : el método java.lang.StrictMath.cbrt() devuelve la raíz cúbica del argumento pasado. 

Punto especial: 

  • El resultado es NaN, si el argumento es NaN.
  • El resultado es un infinito con el mismo signo que el argumento si el argumento es infinito.
  • El resultado es un cero, si el argumento es cero.

Sintaxis:

public static double cbrt(double arg)
Parameters:
arg - argument passed. 
Returns:
cube root of the argument passed

5. asin() : el método java.lang.StrictMath.asin() devuelve el valor del arco seno del argumento del método pasado. El ángulo devuelto está en el rango -pi/2 a pi/2. 
arco seno es el seno inverso del argumento pasado.
asin(arg) = seno -1 de arg

Caso especial : 

  • El resultado es NaN, si el argumento es NaN o su valor absoluto es mayor que 1.
  • El resultado es un cero, si el argumento es cero.

Sintaxis:

public static double asin(double arg)
Parameters:
arg - argument passed. 
Returns:
arc sine of the argument passed.

Código Java que explica el método asin(), cbrt() en la clase lang.StrictMath.

Java

// Java program explaining lang.StrictMath class methods
// asin(), cbrt()
 
import java.lang.*;
public class NewClass
{
 
    public static void main(String[] args)
    {
        int a = 1, b = 8;
        int radd = a + b;
 
        // Use of asin() method
        // Value greater than 1, so passing NaN
        double Asini = StrictMath.asin(radd);
        System.out.println("asin value of Asini : " + Asini);
        double x = StrictMath.PI;
 
        // Use of toRadian() method
        x = StrictMath.toRadians(x);
        double Asinj = StrictMath.asin(x);
        System.out.println("asin value of Asinj : " + Asinj);
        System.out.println("");
 
        // Use of cbrt() method
        double cbrtval = StrictMath.cbrt(216);
        System.out.println("cube root : " + cbrtval);
 
    }
}

Producción : 

asin value of Asini : NaN
asin value of Asinj : 0.054858647341251204

cube root : 6.0

6. log() : el método java.lang.StrictMath.log() devuelve el valor logarítmico del argumento pasado. 

Syntax:
public static double log(double arg)
Parameters:
arg - argument passed. 
Returns:
logarithmic value of the argument passed.

7. hypot() : el método java.lang.StrictMath.hypot(doble p, doble b) devuelve la hipotenusa de un triángulo rectángulo al pasar la base del triángulo y la perpendicular como argumentos.
hipotenusa = [perpendicular 2 + base 2 ] 1/2

Punto importante : 

  • Si cualquiera de los argumentos es infinito, entonces el resultado es infinito positivo.
  • Si cualquiera de los argumentos es NaN y ninguno de los dos es infinito, entonces el resultado es NaN.
Syntax:
public static double hypot(double p, double b)
Parameters:
p - perpendicular of the right triangle
b - base of the right triangle
Returns:
hypotenuse of the right triangle

8. floor() : el método java.lang.StrictMath.floor() devuelve el valor mínimo de un argumento, es decir, el valor entero más cercano que es menor o igual que el argumento pasado.
por ejemplo: 101.23 tiene un valor mínimo = 101

Punto importante: se obtiene el mismo argumento si se pasa un argumento NaN o infinito.

Syntax:
public static double floor(double arg)
Parameters:
arg - the argument whose floor value we need
Returns:closest possible value that is either less than 
                or equal to the argument passed

9. IEEEremainder() : el método java.lang.StrictMath.IEEERemainder(doble d1, doble d2) devuelve el valor del resto aplicando la operación de resto en dos argumentos con el estándar IEEE 754. 
Valor restante = d1 – d2 * n
donde,
n = valor exacto más cercano de d1/d2 

Syntax:
public static double IEEEremainder(double d1, double d2)
Parameters:
d1 - dividend 
d2 - divisor
Returns:
remainder when f1(dividend) is divided by(divisor)

Código Java que explica el método floor(), hypot(), IEEEremainder(), log() en la clase lang.StrictMath. 

Java

// Java program explaining lang.MATH class methods
// floor(), hypot(), IEEEremainder(), log()
 
import java.lang.*;
public class NewClass
{
 
    public static void main(String[] args)
    {
        // Use of floor method
        double f1 = 30.56, f2 = -56.34;
        f1 = StrictMath.floor(f1);
        System.out.println("Floor value of f1 : " + f1);
 
        f2 = StrictMath.floor(f2);
        System.out.println("Floor value of f2 : "  + f2);
        System.out.println("");
 
        // Use of hypot() method
        double p = 12, b = -5;
        double h = StrictMath.hypot(p, b);
        System.out.println("Hypotenuse : "+h);
        System.out.println("");
 
        // Use of IEEEremainder() method
        double d1 = 105, d2 = 2;
        double r = StrictMath.IEEEremainder(d1, d2);
        System.out.println("Remainder : " + r);
        System.out.println("");
         
        // Use of log() method
        double l = 10;
        l = StrictMath.log(l);
        System.out.println("Log value of 10 : " + l);
         
    }
}

Producción : 

Floor value of f1 : 30.0
Floor value of f2 : -57.0

Hypotenuse : 13.0

Remainder : 1.0

Log value of 10 : 2.302585092994046

10. ceil() : el método java.lang.StrictMath.ceil(double a) devuelve el valor más pequeño posible que es mayor o igual que el argumento pasado. El valor devuelto es un entero matemático.

  • El resultado es el mismo, si el valor devuelto ya es un número entero matemático.
  • El resultado es el mismo, si el argumento pasado es NaN o infinito o cero.
  • El resultado es cero negativo, si el argumento pasado es menor que cero pero mayor que -1.0

Sintaxis:

public static double ceil(double arg)
Parameters:
arg - the argument value
Returns:
smallest possible value(mathematical integer)
which is either greater or equal to the argument passed

11. copySign() : el método java.lang.StrictMath.copySign() devuelve el primer argumento de punto flotante pero tiene el signo del segundo argumento.

Sintaxis:

public static double copySign(double m, double s)
                    or
public static float copySign(float m, float s)
Parameters:
m - magnitude 
s - sign 
Returns:
returns second argument with sign of first floating-point argument.

12. atan() : el método java.lang.StrictMath.atan() devuelve el arco tangente del valor del argumento del método. El ángulo devuelto está en el rango -pi/2 a pi/2.
arc tan es el tan inverso del argumento pasado.
atan(arg) = tan inverso de arg

Caso especial : 

  • El resultado es NaN, si el argumento pasado es NaN o su valor absoluto es > 1.
  • El resultado es cero, si el argumento es cero.

Sintaxis:

public static double atan(double a)
Parameters:
a - the argument whose arc tangent value we need.
    argument is taken as radian
Returns:
arc tan value of the argument.

Código Java que explica el método atan(), ceil(), copySign() en la clase lang.StrictMath. 

Java

// Java program explaining lang.StrictMath class methods
// atan(), ceil(), copySign()
 
import java.math.*;
public class NewClass
{
    public static void main(String[] args)
    {
        // Use of atan() method
        double Atani = StrictMath.atan(0);
        System.out.println("atan value of Atani : " + Atani);
        double x = StrictMath.PI / 2;
 
        // Use of toRadian() method
        x = StrictMath.toRadians(x);
        double Atanj = StrictMath.atan(x);
        System.out.println("atan value of Atanj : " + Atanj);
        System.out.println("");
 
 
        // Use of ceil() method
        double val = 15.34, ceilval;
        ceilval = StrictMath.ceil(val);
        System.out.println("ceil value of val : " + ceilval);
        System.out.println("");
 
        double dblMag = val;
        double dblSign1 = 3;
        double dblSign2 = -3;
 
 
        // Use of copySign() method
        double result1 = StrictMath.copySign(dblMag, dblSign1);
        System.out.println("copySign1 : " + result1);
 
        double result2 = StrictMath.copySign(dblMag, dblSign2);
        System.out.println("copySign2 : " + result2);
         
    }
}

Producción : 

atan value of Atani : 0.0
atan value of Atanj : 0.0274087022410345

ceil value of val : 16.0

copySign1 : 15.34
copySign2 : -15.34

Consulte más métodos de la clase lang.StrictMath en: Clase JAva.lang.StrictMath en Java | Conjunto 2
Este artículo es una contribución de Mohit Gupta_OMG 😀 . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
 

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *