function cdf( x, n ) {
	var mlim;
	var pui;
	var i;
	var p;
	if (
		isnan( x ) ||
		!isPositiveInteger( n ) ||
		!isfinite( n )
	) {
		return NaN;
	}
	if ( x < 0.0 ) {
		return 0.0;
	}
	x = round( x );
	mlim = n * ( n + 1 ) / 2;
	if ( x >= mlim ) {
		return 1.0;
	}
	pui = exp( -n * LN2 );
	p = 0;
	for ( i = 0; i <= x; i++ ) {
		p += weights( i, n ) * pui;
	}
	return p;
}
Evaluates the cumulative distribution function (CDF) of the Wilcoxon signed rank test statistic with `n` observations.

@param {number} x - input value
@param {PositiveInteger} n - number of observations
@returns {Probability} evaluated CDF

@example
var y = cdf( 7.0, 9 );
// returns ~0.037

@example
var y = cdf( 7.0, 6 );
// returns ~0.281

@example
var y = cdf( -1.0, 40 );
// returns 0.0

@example
var y = cdf( NaN, 10 );
// returns NaN

@example
var y = cdf( 0.0, NaN );
// returns NaN

@example
var y = cdf( 2.0, -1 );
// returns NaN

@example
var y = cdf( 2.0, 1.8 );
// returns NaN