Class FactDouble

java.lang.Object
org.apache.poi.ss.formula.functions.Fixed1ArgFunction
org.apache.poi.ss.formula.functions.FactDouble
All Implemented Interfaces:
FreeRefFunction, Function, Function1Arg

public class FactDouble extends Fixed1ArgFunction implements FreeRefFunction
Implementation for Excel FACTDOUBLE() function.

Syntax:
FACTDOUBLE (number)

Returns the double factorial of a number.

Number is the value for which to return the double factorial. If number is not an integer, it is truncated.

Remarks

  • If number is nonnumeric, FACTDOUBLE returns the #VALUE! error value.
  • If number is negative, FACTDOUBLE returns the #NUM! error value.
Use a cache for more speed of previously calculated factorial
Author:
cedric dot walter @ gmail dot com
  • Field Details

  • Constructor Details

    • FactDouble

      public FactDouble()
  • Method Details

    • evaluate

      public ValueEval evaluate(int srcRowIndex, int srcColumnIndex, ValueEval numberVE)
      Description copied from interface: Function1Arg
      Specified by:
      evaluate in interface Function1Arg
    • factorial

      public static BigInteger factorial(int n)
    • evaluate

      public ValueEval evaluate(ValueEval[] args, OperationEvaluationContext ec)
      Specified by:
      evaluate in interface FreeRefFunction
      Parameters:
      args - the pre-evaluated arguments for this function. args is never null, nor are any of its elements.
      ec - primarily used to identify the source cell containing the formula being evaluated. may also be used to dynamically create reference evals.
      Returns:
      never null. Possibly an instance of ErrorEval in the case of a specified Excel error (Exceptions are never thrown to represent Excel errors).