Función factorial() BigIntegerMath | guayaba | Java

El método factorial(int n) de la clase BigIntegerMath de Guava se usa para encontrar el factorial del número dado. Devuelve n!, es decir, el producto de los primeros n enteros positivos.
Sintaxis: 
 

public static BigInteger factorial(int n)

Parámetros: Este método toma como parámetro el número n cuyo factorial se quiere encontrar.
Valor devuelto: este método devuelve el factorial del número dado n.
Excepciones: este método lanza IllegalArgumentException si n < 0.
Nota: 
 

  • El método devuelve 1 si n == 0.
  • El resultado ocupa espacio O(n log n), así que utilícelo con precaución.
  • Esto utiliza un algoritmo recursivo binario eficiente para calcular el factorial con múltiplos equilibrados.

Los siguientes ejemplos ilustran el método BigIntegerMath.factorial():
Ejemplo 1:
 

Java

// Java code to show implementation of
// factorial() method of Guava's BigIntegerMath class
 
import java.math.*;
import com.google.common.math.BigIntegerMath;
 
class GFG {
 
    // Driver code
    public static void main(String args[])
    {
        int n1 = 10;
 
        // Using factorial(int n) method of
        // Guava's BigIntegerMath class
        BigInteger ans1 = BigIntegerMath.factorial(n1);
 
        System.out.println("Factorial of " + n1
                           + " is: " + ans1);
 
        int n2 = 12;
 
        // Using factorial(int n) method of
        // Guava's BigIntegerMath class
        BigInteger ans2 = BigIntegerMath.factorial(n2);
 
        System.out.println("Factorial of " + n2
                           + " is: " + ans2);
    }
}
Producción: 

Factorial of 10 is: 3628800
Factorial of 12 is: 479001600

 

Ejemplo 2:
 

Java

// Java code to show implementation of
// factorial() method of Guava's BigIntegerMath class
 
import java.math.*;
import com.google.common.math.BigIntegerMath;
 
class GFG {
 
    // Driver code
    public static void main(String args[])
    {
 
        try {
            int n1 = -5;
 
            // Using factorial(int n) method of
            // Guava's BigIntegerMath class
            // This should throw "IllegalArgumentException"
            // as n < 0
            BigInteger ans1 = BigIntegerMath.factorial(n1);
 
            System.out.println("Factorial of " + n1
                               + " is: " + ans1);
        }
        catch (Exception e) {
            System.out.println("Exception: " + e);
        }
    }
}
Producción: 

Exception: java.lang.IllegalArgumentException: n (-5) must be >= 0

 

Referencia: https://google.github.io/guava/releases/21.0/api/docs/com/google/common/math/BigIntegerMath.html#factorial-int-
 

Publicación traducida automáticamente

Artículo escrito por Sahil_Bansall 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 *