### Details for 308 CrunchJr Functions

Function Prototype/DescriptionExpr
Use
Abs( x ):  Absolute value of xYes
Accel( F, m ):  Acceleration felt by a mass m when acted on by a force F.  This is Newton's Second Law of Motion.  See also Force().
Accel( F, m ) = F/m
Yes
Acos( x ):  Arccosine of x,  (–1  ≤  x  ≤  1)Yes
Acosh( x ):  Arc hyperbolic cosine of x   (x ≥ 1).
Acosh(x) = 2*Ln(√ ½(x+1)  + √ ½(x–1) )
Yes
AltBase( N, new ):  Display N in base new.  Both arguments are integers, (|N| < 231), and (2 ≤ new ≤ 36)No
Amdahl( nCPU, pc ):  Amdahl's Law – the maximum theoretical speedup from using nCPU processors on an application with pc percent parallelism (0 < pc < 100)Yes
Antilog( x ):  Inverse logarithm - the number whose logarithm is xYes
AreaBrick( length, width, depth ):  Area of the rectangular solid with sides length, width, and depth (all > 0).
AreaBrick(L,W,D) = 2(LW+WD+DL)
Yes
AreaCircle(r) = π
Yes
AreaCone( radius, height ):  Area of a right cone of radius radius and height height (does not include the base).
AreaCone(r,h) = πr√ r² + h²
Yes
AreaCube( side ):  Area of a cube of side side.
AreaCube(s) = 6s²
Yes
AreaCylinder( radius, height ):  Area of a right cylinder of radius radius and height height (does not include base, top).
AreaCylinder(r,h) = 2πrh
Yes
AreaEllipse( axis1, axis2 ):  Area of an ellipse with semiaxes of axis1 and axis2
AreaEllipse(a,b) = πab
Yes
AreaFrustum(b,t,h) = π(b+t)√ h²+(b-t)²
Yes
AreaLune( radius, incl ):  Area of a lune on the surface of a sphere of radius radius included between two great circles whose inclination is incl degrees:
AreaLune(r,A) = 2πr²A/180
Yes
AreaOblSpheroid( axis1, axis2 ):  Given an ellipse with semi-axes (axis1, axis2), an oblate spheroid is formed by the rotation of the ellipse about its minor (shorter) axis.  (Note that a semi-axis is analogous to a radius, not a diameter.)  The surface area of an oblate spheroid is given by:
AreaOblSpheroid(a,b) = π((2a²+(b²/E)*Ln((1+E)/(1-E)))
where E (Eccentricity) is:
E = √ a²-b² /a,  and (a > b)
Yes
AreaPgram( s1, s2, angle ):  Area of a parallelogram of sides s1, s2 and the angle angle (degrees) between them
AreaPGram( s1, s2, d) = s1 × s2 × sin(πd/180)
Yes
AreaProlSpheroid( axis1, axis2 ):  Given an ellipse with semi-axes (axis1, axis2), a prolate spheroid is formed by the rotation of the ellipse about its major (longer) axis.  (Note that a semi-axis is analogous to a radius, not a diameter.)  The surface area of a prolate spheroid is given by:
AreaProlSpheroid(a,b) = 2π(b²+(ab*Asin(E)/E))
where E (Eccentricity) is:  E = √ a² - b²  /a,  and (a > b)
Yes
AreaPyramid( nSides, base, height ):  Lateral area of a regular pyramid of nSides sides, base dimension base (length of one side of base), and slant height height
AreaPyramid(n,b,h) = ½nbh
Yes
AreaRectangle( length, width ):  Area of a rectangle of sides length and width
AreaRectangle(L,W) = LW
Yes
AreaRegPolygon( nSides, length ):  Area of a regular polygon with nSides sides, each of length length.  See also RegPolygon()
AreaRegPolygon(n,L) = nL²/(4tan(π/n))
Yes
AreaSphCap( sphR, ht ):  Area of a spherical cap of radius sphR and height ht.  Note that sphR is the radius of the sphere, not the cap.  A spherical cap is also known as a dome.  See also AreaSphCap2().
AreaSphCap(r,h) = 2πrh
Yes
AreaSphCap2( capR, ht ):  Area of a spherical cap of radius capR and height ht.  Note that capR is the radius of the cap, not the sphere.  A spherical cap is also known as a dome.  See also AreaSphCap().
AreaSphCap2(r,h) = π(r² + h²)
Yes
AreaSphere(r) = 4π
Yes
AreaSphPolygon( radius, nSides, angleSum ):  Area of a regular spherical polygon of nSides sides, where angleSum is sum of its angles (degrees), and radius is the sphere's radius,  (angleSum > 180×(nSides-2).
AreaSphPolygon(r,n,S) = πr²((S/180)-(n-2)))
Yes
AreaSphTriangle( r, a1, a2, a3 ):  Area of spherical triangle whose angles are a1, a2, a3 (degrees) on a sphere of radius r
AreaSphTriangle(r,A,B,C) = ((A+B+C)/180 - 1)r²π
Yes
AreaSquare( s ):  Area of a square of side s
AreaSquare(s) = s²
Yes
AreaTriangle( base, height ):  Area of a triangle of base base and height height
AreaTriangle(b,h) = ½bh
Yes
AreaTriangle2( x1, y1,   x2, y2,   x3, y3 ):  Area of a triangle given the coordinates of its 3 vertices.
AreaTriangle2(x1,y1, x2,y2, x3,y3)  =  ½|x1(y2-y3)+x2(y3-y1)+x3(y2-y1)|
Yes
AreaTriangle3( a, b, c ):  Area of a triangle given the lengths of its 3 sides.  Using Heron's formula, let p = half perimeter = ½(a+b+c), then
AreaTriangle3(a,b,c)  =  √p(p-a)(p-b)(p-c)
Yes
ArithmeticLast( firstTerm, delta, numb ):  The last element in the Arithmetic Progression defined by its first term (firstTerm), delta (delta), and number of elements (numb)
ArithmeticLast(a,d,n) = a+(n-1)d
Yes
ArithmeticSum( firstTerm, delta, numb ):  The sum of the elements in the Arithmetic Progression defined by its first term (firstTerm), delta (delta), and number of elements (numb)
Eq. 1  ArithmeticSum(a,d,n) = ½n(2a+(n-1)d);
Note that if the last term is L, the sum may be computed as:
Eq. 2  ArithmeticSum(a,n,L) = ½n(a+L);
This program uses only Equation (1) above
Yes
Asin( x ):  Arcsine of x,  (–1  ≤  x  ≤  1)Yes
Asinh( x ):  Arc hyperbolic sine of x
Asinh(x) = Ln(x + √ 1+x²  )
Yes
Atan( x ):  Arctangent of xYes
Atan2( x, y ):  Arctangent of x/y.  Atan2() overcomes a limitation with Atan().  Specifically, with two arguments, Atan2() can return the angle in the correct quadrantYes
Atanh( x ):  Arc hyperbolic tangent of x,  (|x| < 1).
Atanh(x) = ½(Ln(1+x) – Ln(1–x))
Yes
     B →  NavGrid             →  (Home)
Base( N ):  Display the integer argument N in octal, hex and binaryNo
Bernoulli( n ):  The Bernoulli Numbers B(n), for n = {0,1,2,4,6,8,...,22},  where n is the integer argumentYes
BernoulliOld( n ):  The (old-style) Bernoulli Numbers B*(n), for n = {1,2,3,...,11}, where n is the integer argumentYes
BillSplit( bill, nShares, tipPercent ):  The (rounded) amount each of nShares people should pay towards a total bill of (bill + tip), where tip is tipPercent of bill.  Note that (nShares > 1) and it may be a non-integer.  (0 ≤ tipPercent ≤ 100).  See also Tip().No
Binary( N ):  Display the integer argument N in binaryNo
Binom( n, k ):  Display the coefficient of the xk term of the expansion of (1 + x)n.  See also BinomCoefs(), BinomCum(), BinomProb().
Binom(n,k) = n!/(k!(n-k)!)
(n,k = integers),  (51 ≤ n < k < 0).
Yes
BinomCoefs( n ):  Display the (n+1) binomial coefficients of the expansion of (1 + x)n for (n = integer) and (20 ≤ n < 0).  See also Binom(), BinomCum(), BinomProb().No
BinomCum( p, n, k ):  Display the probability of achieving at most k successes in n trials, with p being the probability of success in one trial.  The trials are independent, and the outcome of each is either success or failure.  See also Binom(), BinomCoefs(), BinomProb().
BinomCum(p,n,k) = x=0,k{B(n,x)pxqn-x}
= x=0,kBinomProb(p,n,x)
where (n,k = integers), (51 ≤ n < k ≤ 0),  (0 < p < 1),  q = (1-p), and  B(n,k) = n!/(k!(n-k)!)
Yes
BinomProb( p, n, k ):  Display the probability of achieving exactly k successes in n trials, with p being the probability of success in one trial.  The trials are independent, and the outcome of each is either success or failure.  The Binomial Probability Function is also known as the Probability Mass Function.  See also Binom(), BinomCoefs(), BinomCum().
BinomProb(p,n,k) = B(n,k)pkqn-k
where (n,k = integers), (51 ≤ n < k ≤ 0),  (0 < p < 1),  q = (1-p), and  B(n,k) = n!/(k!(n-k)!)
Yes
BitCount( N ):  Return the number of 1 bits in the 32-bit integer argument N.  Same as PopCount()Yes
BMI( weight, height ):  Body Mass Index – a measure of weight for height in adults.  As BMI increases, risk for many weight-related diseases increases.  Weight is weight (lbs), height is height (ins).
BMI: Approximate Results
FemaleMale
Underweight< 19.1< 20.7
Normal  19.1 – 25.8  20.7 – 26.4
Marginally
Overweight
25.8 – 27.3  26.4 – 27.8
Overweight  27.3 – 32.3  27.8 – 31.1
Obese > 32.3 > 31.1
Yes
BMIMetric( weight, height ):  Body Mass Index – a measure of weight for height in adults.  As BMI increases, risk for many weight-related diseases increases.  Weight is weight (kgs), height is height (cms).
BMI: Approximate Results
FemaleMale
Underweight< 19.1< 20.7
Normal  19.1 – 25.8  20.7 – 26.4
Marginally
Overweight
25.8 – 27.3  26.4 – 27.8
Overweight  27.3 – 32.3  27.8 – 31.1
Obese > 32.3 > 31.1
Yes
     C →  NavGrid             →  (Home)
Calendar( year ):  Show the calendar for year (1753–9999); if out of range, show the calendar for the current year.No
Calories( activity, weight, dist, min, sec ):  Approximate calories burned by various activities.  Arguments as in the table below.  For example: "Calories( running, 165, 3.25, 25, 20 )" yields "408 calories -- Running (165 lbs, 3.25mi in 25:20 =>  7:48/mi = 7.70 mph)".  See also Fitness(), HeartRate(), Karvonen(), Points(), BMI()
activity   weight     dist    min    sec  ‡ Others | lbs miles min sec | AerobicDance, AerobicsHi†, AerobicsLo†, Basketball, lbs miles min sec | Handball, Hockey, Iceskating, Judo, Karate, Lacrosse, lbs miles min sec | PingPong, Racketball, Rollerblading, Rollerskating, lbs yards min sec | Rowing, SkiingCC†, SkiingDH†, SkiingWater, lbs yards min sec | Snowshoeing, Snowshoveling, Soccer, Squash, lbs meters min sec | Taichi, TennisD†, TennisS†, Volleyball, lbs meters min sec | WaterAerobics lbs rpm min sec | † Swimming__; MY=(male,yards), FY=(female,yards); lbs # holes min sec | MM=(male,meters), FM=(female,meters); lbs # holes min sec | † Aerobics__;  Lo=low-impact,  Hi=high-impact lbs 0 min sec | † Skiing__;  CC=cross-country,  DH=downhill lbs # steps 0 0 | † Tennis_;  D=doubles,  S=singles
No
Capacitance( c1, c2, ... ):  Capacitance for 2-10 capacitors (c1, c2, ...) in serial, parallel.  All args > 0.No
CapElec( Q, V ):  Electrical capacitance is the ratio of the change in electrical charge Q in a system to a given electric potential V.
CapElec( Q, V ) = Q/V
Yes
Cartesian( dist, angle ):  The (x,y) coordinates of the point defined as dist units from the origin at the angle angle radians (that is, the arguments are the polar coordinates of the point)No
Ceiling( N ):  The smallest integer ≥ N.  Same as RoundUp().  Not to be confused with Trunc()Yes
Celsius(F) = (5/9)*(F-32)  ≈  0.5555556*(F-32)
Yes
Yes
Circle3( x1, y1,  x2, y2,  x3, y3 ):  Given 3 points on a plane, determine the radii and centers of the (circumscribed, inscribed) circles they define.  The arguments are the 3 points.No
CircumCircle(r)  =  2πr
Yes
CircumEllipse( axis1, axis2 ):  Approximate circumference of an ellipse with semiaxes axis1 and axis2.
CircumEllipse(a,b)  ≅  2π ½(a² + b²)   is a good approximation, but a slightly better estimating function (from Ramanujan) is actually used.
Yes
CoinFlip( x ):  Simulate a random coin flip (return 0 or 1).  The argument is necessary but ignored.  Not reproducible.  See also Rand(), IRand(), RockPS(), RockSpock(), Dice().Yes
Colors( value1, value2, ... ):  Display the color and the Red, Green, and Blue components of the (1-10) values in a table, and show the corresponding HSV values.  Value is an integer representation of the color (e.g., 0x3DB733), and is silently kept in the range (0 - 0xFFFFFF).  The values are sorted and duplicate values are silently ignored.  See also Rgb(), HSVtoRGB().  Same as RgbCompare().No
Combinations( total, n ):  The number of combinations of total things taken n at a time.  Both arguments are integers in (1–51), and (total > n).  See also Permutations()
Combinations(t,n) = t!/(n! (t-n)!)
Yes
ComplexAdd(a,b,c,d) = (a+bi) + (c+di) = ((a+c) + (b+d)i)
No
ComplexDiv( real1, imag1,  real2, imag2 ):  Division of complex numbers:
ComplexDiv(a,b,c,d) = (a+bi)/(c+di)
No
ComplexExp( real, imag ):  Exponential of a complex number.
ComplexExp(a,b) = e(a+bi)
No
ComplexLn( real, imag ):  Natural logarithm of a complex number.No
ComplexMult( real1, imag1,  real2, imag2 ):  Product of two complex numbers:
ComplexMult(a,b,c,d) = (a+bi)×(c+di)  =  ( (ac–bd) + (ad+bc)i )
No
ComplexPower( real, imag, x ):  Raise a complex number to a real power.
ComplexPower(a,b,x) = (a+bi)x
No
ComplexPower2( real1, imag1,  real2, imag2 ):  Raise a complex number to a complex power.
omplexPower2(a,b,c,d) = (a+bi)(c+di)
No
ComplexRoots( n, real, imag ):  The n roots of a complex number (real + imagi), where n is an integer in (2-12).  For n = 3, the 3 cube roots are generatedNo
ComplexSqrt( real, imag ):  The positive square root of a complex number.  When the result is (x + yi), the other root is (–x – yi).  Note that x ≥ 0 (always)No
Cos( r ):  Cosine of the angle r (radians).  Same as Cosr()Yes
Cosd( d ):  Cosine of the angle d (degrees)Yes
Cosh( r ):  Hyperbolic cosine of the angle r (radians)
Cosh(x) = ½(ex + e–x)
Yes
Cosr( r ):  Cosine of the angle r (radians).  Same as Cos()Yes
CrossProd( x1, y1, z1,   x2, y2, z2 ):  Show the cross product of the two input 3-D vectors (x1, y1, z1) and (x2, y2, z2) and the angle between them.  The cross product is a vector perpendicular to both input vectors and normal to the plane defined by them.  See also DotProd().No
Cubert( x ):  Cube root of xYes
Cubic( a, b, c, d ):  The roots to the 3rd order equation:
b>ax³ + bx² + cx + d = 0,   where  (a ≠ 0)
No
     D →  NavGrid             →  (Home)
Datimer( x ):  Print current date/time (format is HH:MM:SS Day MonDD,YY).  The argument x is required but ignored (use 0).No
DayOfWeek( year, month, day ):  Print day-of-week for input date: year > 1752, month (1-12) for (Jan-Dec) or the constants JAN, FEB, ..., DEC, and day (1-lastDay), (28 ≤ lastDay=f(month,year) ≤ 31).  If the input is (0,0,0), use today.  See also DayOfYear(), DayOfYear2().No
DayOfYear( year, month, day ):  Print day-of-year for input date: year > 1752, month (1-12) for (Jan-Dec) or the constants JAN, FEB, ..., DEC, and day (1-lastDay), (28 ≤ lastDay=f(month,year) ≤ 31).  If the input is (0,0,0), use today.  See also DayOfWeek(), DayOfYear2().No
DayOfYear2( year, dayNumb ):  Print the date (day-of-week, month, day) for the dayNumbth day of year year,  (1753 ≤ year ≤ 9999),  (1 ≤ dayNumb ≤ 366).  See also DayofYear(), DayOfWeek().No
DaysAway( nDays, year, month, day ):  Display the date of the day which is nDays from year, month, day.  (1752 < year < 10000),  month (1-12) for (Jan-Dec) or the constants JAN, FEB, ..., DEC,  and day (1-lastDay) (28 ≤ lastDay=f(month,year) ≤ 31).  If date is (0,0,0), use today.  nDays may be positive or negative.  Note that the computation of years/days goes in the direction of nDays.  That is, DaysAway( 740,  1994,FEB,22 ) will yield:   Tuesday, February 22, 1994 → Sunday, March 3, 1996  =  740 days  =  2 years, 10 days,  but DaysAway( -740,  1996, MAR, 3 ) will yield:  Tuesday, February 22, 1994 ← Sunday, March 3, 1996  =  740 days  =  2 years, 9 days.  See also DaysBetw().No
DaysBetw( year1, month1, day1,   year2, month2, day2 ):  Display the number of days between date1 (1st 3 arguments) and date2 (2nd 3 arguments).  (1752 < year < 10000),  month (1-12) for (Jan-Dec) or the constants JAN, FEB, ..., DEC,  and day (1-lastDay) (28 ≤ lastDay=f(month,year) ≤ 31).  If date* is (0,0,0), use today.  Note that the computation of years/days goes from the first date to the second date.  That is, DaysBetw( 2007, FEB, 15,   2008, MAR, 25 )  will yield:  Thursday, February 15, 2007 → Tuesday, March 25, 2008  =  404 days  =  1 year, 39 days,  but  DaysBetw( 2008, MAR, 25,  2007, FEB, 15 ) will yield:  Thursday, February 15, 2007 ← Tuesday, March 25, 2008  =  404 days  =  1 year, 38 days.  See also DaysAway().No
DaysSince( holiday ):  Display number of days since the last occurrence of the specified date.  Holiday may be one of { CHRISTMAS, THANKSGIVING, VALENTINES, MOTHERS, FATHERS, SUMMER, FALL, WINTER, SPRING, LABOR, MEMORIAL }, among others.  Click Constants for a full list.  See also DaysTil(), DaysAway(), DaysBetw().No
DaysTil( holiday ):  Display number of days til the next occurrence of the specified date.  Holiday may be one of { CHRISTMAS, THANKSGIVING, VALENTINES, MOTHERS, FATHERS, SUMMER, FALL, WINTER, SPRING, LABOR, MEMORIAL }, among others.  Click Constants for a full list.  See also DaysSince(), DaysAway(), DaysBetw().No
Degrees(r) = 180r/π  = r × RADIANS2D  ≈  r × 57.29578
Yes
Density( m, v ):  The ratio of mass m to volume v
Density( m, v ) = m/v
Yes
Dice( nDice ):  Simulate random tossing of nDice (1-6).  Not reproducible.  See also Rand(), IRand(), CoinFlip(), RockPS(), RockSpock().Yes
Distance( x1, y1, (z1),  x2, y2, (z2)  ):  Given two data points in 2-D (or 3-D) space, (x1, y1, (z1)) and (x2, y2, (z2)), compute the distance between them.  When only 4 arguments are present, do the 2-D computation.  See also Line(), Line3D().Yes
DistPtLine( x1, y1, [z1,]  x2, y2, [z2,]  x3, y3[, z3] ):  Minimum distance between a point (x1, y1, [z1,]) and a line denoted by its end points (x2, y2, [z2,]   x3, y3[, z3]).  2-D or 3-D:  for 2-D, the input points are two arguments each.  See also LinePoint() and DistPtPlane()Yes
DistPtPlane( x, y, z,  A, B, C, D ):  Minimum distance between a point (x, y, z) and a plane (A, B, C, D).  See also PlanePoint() and DistPtLine()Yes
DotProd( N,  x1,x2,...  y1,y2,... ):  Show the dot product of the two input vectors of length N, (x1, y1, ... ) and (x2, y2, ...).  N is in (2 – 16).  The dot product is a scalar value also known as the inner product or the scalar product.  See also CrossProd(), DotProd3d(), DotProdId().Yes
DotProd3D( x1, y1, z1,   x2, y2, z2 ):  Show the dot product of the two input 3-D vectors (x1, y1, z1) and (x2, y2, z2) and the angle between them.  The dot product is a scalar value also known as the inner product or the scalar product.   See also CrossProd(), DotProd(), DotProdId().No
DotProdId( id1, id2 ):  Show the dot product of the two input vectors (ID={id1,id2}), id1, id2 in (1–20).  The dot product is a scalar value also known as the inner product or the scalar product.  The IDs may be the same.  Same as VectorDot().  See also DotProd(), DotProd3D(), CrossProd().Yes
     E →  NavGrid             →  (Home)
EasterDate( year ):  Easter date for year = year > 1752 (Easter falls between March 22 and April 25)No
EffectiveRate( nominalRate, nPerYear ):  The effective annual rate for a nominal interest rate nominalRate, compounded nPerYear times per year.  NominalRate must be > 0, and nPerYear is an integer > 1.  The "nominal rate" is the rate per compound period.  For example, if a credit card charges a nominal 1.5%/month, the effective annual rate is 19.5618% (not 18%).  See also NominalRate().No
ElecForce( q1, q2, d ):  Coulomb's Law:  The electrostatic force between two point charges (q1, q2) is proportional to their magnitudes and inversely proportional to the square of the distance d between them.  Like charges repel, unlike attract.  Similar to the Gravitational Force, except that the Gravitational Force always attracts.  See also GravForce().
ElecForce(q1,q2,d) = ke(q1 × q2)/d².
Yes
Emc2( mass ):  The rest energy (joules) equivalent to the mass mass (kg).  Energy computed using Einstein's famous equation:  e = mc².  For example, 1 gram  ≈  8.99×1013 joules  ≈  21.5 kilotons of TNTYes
Erf( x ):  Error function of x.  When a series of measurements can be described by a normal distribution with StdDev = σ and Avg = 0, then Erf{v/(σ√)} is the probability that the error of a single measurement is in the range (–v to v). Often used to determine the bit error rate of a digital communication system.  See also Erfc().Yes
Erfc(x) = 1 – Erf(x)
Yes
Exp( x ):  Exponential of x
Exp(x) = ex
Yes
Expm1( x ):  Exponential of (x) – 1.0  —  accurate even for very small values of x
Expm1(x) = ex-1
Yes
     F →  NavGrid             →  (Home)
Factor( N ):  List all the prime values which divide evenly (with no remainder) into integer N.  Max value for N is (231-1) = 2,147,483,647No
Factorial( N ):  The product of all the integers from 1 to integer N,  where N must be in the range (0-143).  Note that by definition, Factorial(0) = 0! = 1.
Factorial(n) = n! = 1*2*3*...*n
Yes
Fahr(c) = 1.8c+32
Yes
Fahrenheit(c) = 1.8c+32
Yes
Fib( N ):  The Nth element in the Fibonacci series {Fib(n), n = 0,1,2,3,...}.  Same as Fibonacci()
Fib(0) = 0,  Fib(1) = 1,  Fib(n) = Fib(n-2)+Fib(n-1)
Yes
Fibonacci( N ):  The Nth element in the Fibonacci series {Fibonacci(n), n = 0,1,2,3,...}.  Same as Fib()
Fibonacci(0) = 0,  Fibonacci(1) = 1,  Fibonacci(n) = Fibonacci(n-2)+Fibonacci(n-1)
Yes
Fitness( code, gender, age, val1, val2 ):  Determine fitness level by taking one of six basic fitness tests (based on Dr Kenneth Cooper's "Aerobics" books).  The tests are either Distance traveled in a specified time or Time to cover a specified distance for walking, running, swimming or cycling.  Result is one of {VeryPoor, Poor, Fair, Good, Excellent, Superior}.  Consult a physician before taking any of these tests.  Warm up appropriately before starting a test.  See also HeartRate(), Karvonen(), Points(), Calories(), BMI().  code = test code (1-6), gender is gender (0,1) = (Male,Female), age is age (years), val1 and val2 are as below
Test   code     gender    age    val1   val2  Test   code     gender    age    val1 | 1 (0,1) yrs min sec | 4 (0,1) yrs mi 0 2 (0,1) yrs min sec | 5 (0,1) yrs yds 0 3 (0,1) yrs mi 0 | 6 (0,1) yrs m 0
No
Floor( x ):  The greatest integer ≤ x.  Same as RoundDown().  Not to be confused with Trunc()Yes
Force( mass, acc ):  The net force (newtons) on an object of mass mass (kg) which induces an acceleration of acc (m/s²).  This is Newton's Second Law of Motion:
F = ma.
Yes
FreeFall( time ):  Distance (feet) traveled in free fall (starting at rest) in time seconds.
FreeFall( t ) = ½g
Yes
FreeFallM( time ):  Distance (meters) traveled in free fall (starting at rest) in time seconds.
FreeFallM( t ) = ½g
Yes
FutureValue( principal, years, rate, nPerYear ):  The amount to which principal principal will accumulate in years years at an annual interest rate of rate percent compounded nPerYear times per year.  If nPerYear is zero, simple interest is used.  Years and nPerYear are integers.  See also PresentValue(), Ira(), IraProfile().Yes
     G →  NavGrid             →  (Home)
Gcd( n1, n2, ..., n10 ):  Greatest common divisor (also known as greatest common factor (gcf)).  The largest positive integer that divides the 2-10) 32-bit positive integer arguments evenly (no remainder).  Special case:  GCD(0,0) = 0Yes
GeometricLast( term1, ratio, N ):  The last element in the Geometric Progression defined by its first term (term1), ratio (ratio), and number of elements (N)
GeometricLast(a,r,n) = ar(n-1)
Yes
GeometricMean( x1, x2, ... ):  Geometric mean of the (2-10) arguments (all > 0).  Not related to GeometricSum(), GeometricLast()Yes
GeometricSum( term1, ratio, N ):  Sum of the elements in the Geometric Progression defined by its first term (term1), ratio (ratio), and number of elements (N).  N is an integer > 1, and ratio ≠ one or zero.
Eq. 1:  GeometricSum(a,r,n) = a(rn-1)/(r-1))
Note that if the last term is L, the sum may be computed as:
Eq. 2:  GeometricSum(a,r,L) = (Lr-a)/(r-1)
Further, for n = ∞ and r² < 1.0;
Eq. 3:  GeometricSum(a,r) = a(1-r)
This program uses only Eq 1 above
Yes
GravForce( m1, m2, d ):  Newton's Law of Universal Gravitation:  The force between two masses (m1, m2) is proportional to their magnitudes and inversely proportional to the square of the distance d between them.  The force is always attractive.  Similar to the Electrostatic Force, except that the Electrostatic Force may attract or repel.  See also ElecForce().
GravForce(m1,m2,d) = G(m1 × m2)/d².
Yes
GSeries( element1, element2, N ):  The Nth element in the Generalized Fibonacci Series {Gseries(n), n = 0,1,2,3,...}, defined as:  GSeries(0) = element1,  GSeries(1) = element2,  GSeries(n) = GSeries(n-2)+GSeries(n-1)Yes
     H →  NavGrid             →  (Home)
HarmonicMean( x1, x2, ... ):  Harmonic mean of the (2-10) arguments (all arguments > 0)Yes
HeartRate( age, restingPulse ):  Display maximum and various other workout-related target heart rates: age is age (integer, (10-100)), and restingPulse is resting heart rate (integer, (35-90)).  Same as Karvonen().No
HeatIndex( temp, humidity ):  Display the heat index for a given temperature temp (°F) and relative humidity humidity (%).  The heat index is an approximation of the temperature humans perceive.  (temp > 68°F,  humidity > 40).No
HeatIndexMetric( temp, humidity ):  Display the heat index for a given temperature temp (°C) and relative humidity humidity (%).  The heat index is an approximation of the temperature humans perceive.  (temp > 20°C,  humidity > 40).No
Hex( N ):  Display the integer argument N in hexadecimalNo
HillCipher( action, mtxId, msg ):  Encipher/Decipher messages:  action = 0/1 for Encipher/Decipher.  MtxId is the matrix ID (1–20) to use for transformations – use MatrixSave() to create matrices for use with HillCipher().  Msg is the message to be transformed – in the alphabet associated with the chosen matrix.  It is best when message length is a multiple of the matrix dimension (2-4), otherwise the message will be "."-filled.  There are 3 alphabets of (31,47,73) characters:
• ID=1,  31 characters:  A-Z ., =#  case-insensitive, includes blank
• ID=2,  47 characters:  A-Z 0-9 +-*/ =().,#  case-insensitive, includes blank
• ID=3,  73 characters:  A-Z a-z 0-9 +-*/ =().,#  case-sensitive, includes blank
No
Holiday( month ):  List the holidays in month month.  If month is not in JAN – DEC (1–12), list all the holidays.No
Horizon( height ):  Approximate distance (miles) to the horizon (on Earth) from a height of height feet (height > 0)
Horizon(h) = √ 2Reh + h²
{Note, when (h << Re),  Horizon(h) ≈ 1.224 √ h  }
Yes
Horizon2( radius, height ):  Approximate distance (miles) to the horizon on a sphere of radius radius miles from a height of height feet (height > 0).  See also Horizon().  Horizon2( RADIUSEARTH, h ) is the same as Horizon( h ).  Horizon2( RADIUSMOON, h ) is the approximate distance (miles) to the horizon from a height of h feet on the Moon.Yes
Horizon2Metric( radius, height ):  Approximate distance (km) to the horizon on a sphere of radius radius (km) from a height of height meters (height > 0).  See also Horizon2().  Horizon2Metric( RADIUSEARTH×KMPMI, h ) is the same as HorizonMetric( h ).  Horizon2Metric( RADIUSMARS×KMPMI, h ) is the approximate distance (km) to the horizon from a height of h meters on Mars.Yes
HorizonMetric( height ):  Approximate distance (km) to the horizon (on Earth) from a height of height meters (height > 0)
Horizon(h) = √ 2Reh + h²
{Note, when (h << Re),  Horizon(h) ≈ 3.568√}
Yes
HSVtoRGB( hue, saturation, value ):  Convert an HSV representation of a color to its RGB representation.  Use Rgb() or Colors() to convert RGB to HSV.  See also Rgb(). RgbCompare(), Colors()No
     I →  NavGrid             →  (Home)
Int( x ):  The integer component of x.  Same as Trunc().  Not to be confused with Floor(), Ceiling(), RoundDown(), RoundUp().
xTrunc(x)
Int(x)
Floor(x)
RoundDown(x)
Ceiling(x)
RoundUp(x
2.7 223
-2.7 -2-3-2
Yes
Integrate( a, b, expr )a b{expr(x)} dx.  Approximate result of integrating the expression (expr) from a to bA and b are the lower and upper bounds of the (dummy) variable in expr, and must be constants with (ab).  The expression expr must have exactly one variable, must be single-valued, and may be a single user-defined function or an expression with no user-defined functions.  The expression expr must be continuous over the specified range, and may include any single-valued function except { Rand(), IRand(), CoinFlip(), RockPS(), RockSpock(), Dice() }.  Unpredictable results may occur when expr is not continuous or is otherwise ill-behaved.  Same as Quadrature(), except Quadrature() always shows convergence of the approximate solution.  Quadrature() is strongly recommended.  Not eligible for CrunchJr History(Replay).No
IntersectCC( radius1, x1, y1,  radius2, x2, y2 ):  Show the intersection points of the two input circles on a plane.  See also the other Intersect*() and Plane*() family of functions.No
IntersectCL( radius, cx, cy,  x1, y1,  x2, y2 ):  Show the intersection points of a circle and a line on a plane.  See also the other members of the Intersect*() family of functions.No
IntersectLL( L1x1, L1y1,   L1x2, L1y2,   L2x1, L2y1,   L2x2, L2y2 ):  Show the intersection point of the two input lines.  See also the other Intersect*() and Plane*() family of functions.No
IntersectLP( x1, y1, z1,  x1, y2, z2,  A, B, C, D ):  Show the intersection point of a line and a plane.  Same as PlaneLine().  See also the other Intersect*() and Plane*() family of functions.No
IntersectLS( x1, y1, z1,  x1, y2, z2,  radius, cx, cy, cz ):  Show the intersection points of a line and a sphere .  See also the other Intersect*() and Plane*() family of functions.No
IntersectLT( x1, y1,  x2, y2,  tx1, ty1,  tx2, ty2,  tx3, ty3 ):  Show the intersection points of a line and a triangle on a plane.   See also the other Intersect*() and Plane*() family of functions.No
IntersectPP( A1, B1, C1, D1,  A2, B2, C2, D2 ):  Show the equation of the line of intersection of two planes and the angle between them.  The equation of a line is Ax + By + Cz + D = 0.  See also the other Intersect*() and Plane*() family of functions.No
IntersectPS( A1, B1, C1, D1,  radius, cx, cy, cz ):  Show the intersection of a plane and a sphere.  The equation of a plane is Ax + By + Cz + D = 0.  The intersection will be a circle on the plane.  See also the other Intersect*() and Plane*() family of functions.No
IntersectSS( radius1, x1, y1, z1,  radius2, x2, y2, z2 ):  Show the intersection of two spheres.  The intersection will be a circle on the plane perpendicular to a line connecting the centers of the spheres.  See also the other Intersect*() and Plane*() family of functions.No
IntersectTT2( T1x1, T1y1,  T1x2, T1y2,  T1x3, T1y3,   T2x1, T2y1,  T2x2, T2y2,  T2x3, T2y3 ):  Show the intersection points of the two input triangles on a plane.  There will be (0-6) points of intersection.  See also the other Intersect*() and Plane*() family of functions.No
IntersectTT3( T1x1, T1y1, T1z1,  T1x2, T1y2, T1z2,  T1x3, T1y3, T1z3,   T2x1, T2y1, T2z1,  T2x2, T2y2, T2z2,  T2x3, T2y3, T2z3 ):  Show the intersection points of the two triangles in 3-D space.  If the triangles intersect, the result will be a line segment (part of the line of intersection of the two planes defined by the triangles).  See also the other Intersect*() and Plane*() family of functions.No
Inv( x ):  Inverse of argument x  (x ≠ 0)
Inv(v) = 1/v
Yes
InvMod( a, b ):  The modular multiplicative inverse of a mod b (Mod(a,b)), or zero if a and b are not coprime.  A and b must both be integers > 1.Yes
Ira( currValue, addition, rate, years ):  The value of an investment (e.g., an IRA) in the future.  currValue is the current value, addition is the yearly addition to (or withdrawal from) the investment, rate is the annual interest rate (e.g., 5.25), and years is the duration (years).  Ira() assumes Jan 1 investments and reports results for Dec 31.  See also IraProfile(), FutureValue()Yes
IRand( m, n ):  Return a random integer value between integers m and n.  See also Rand(), CoinFlip(), RockPS(), RockSpock(), Dice().
Notes:  (1) not reproducible,   (2) IRand(0,1) is like a coin flip.
Yes
IraProfile( currValue, addition, rate, years ):  Show lifetime investment progress (e.g., an IRA).  currValue is the current value, addition is the yearly addition to (or withdrawal from) the investment, rate is the annual interest rate (e.g., 5.25), and years is the lifetime (years).  IraProfile() assumes Jan 1 investments and reports results for each Dec 31. See also Ira(), FutureValue()No
     K →  NavGrid             →  (Home)
Karvonen( age, restingPulse ):  Display maximum and various other workout-related target heart rates: age is age (integer, (10-100)), and restingPulse is resting heart rate (integer, (35-90)).  Same as HeartRate().No
Kelvin( celsiusDegrees ):  Convert Celsius temperature (celiusDegrees) to Kelvin.  See also Rankine().
Kelvin(C)  =  C+273.15
Yes
KEnergy( mass, velocity ):  Kinetic Energy of an object of mass mass moving at a constant velocity velocity.  When mass is in kg and velocity is m/sec, KEnergy is J (joules);  when mass is in lb and velocity is ft/sec, KEnergy is in ft-lbf.  See also PEnergy().
KEnergy(m,v)  =  ½mv²
Yes
     L →  NavGrid             →  (Home)
Lcm( n1, n2, ..., n10 ):  Least common multiple (also, lowest common factor (lcf)).  The smallest positive integer that is a multiple of the (2-10) 32-bit positive integer arguments.  Special case: if any argument is zero, the LCM is defined to be zero.Yes
LeapYear( year ):  Return 1 if year is a leap year,  0 otherwise.  (1753 ≤ year ≤ 9999).Yes
Line( x1, y1,  x2, y2 ):  Given two data points on the X-Y plane, (x1, y1) and (x2, y2), compute the slope (m), the y-intercept (b), the distance between the two points, the midpoint, and show the equation of the line containing the points.  Same as Ymxb().  See also Line3D().No
Line3d( x1, y1, z1,  x2, y2, z2 ):  Given two data points in 3-D space (X-Y-Z), (x1, y1, z1) and (x2, y2, z2), compute the equation of the line, the distance between the 2 points, the direction vector from point1 to point2, the midpoint, and the X-Y, X-Z, Y-Z slopes.  See also Line().No
Linear( a, b ):  The solution to the 1st order equation:
ax + b = 0   where  (a ≠ 0)
Yes
LinePoint( x1, y1, [z1,]  x2, y2, [z2,]  x3, y3[, z3] ):  Minimum distance between a point (x1, y1, [z1,]) and a line denoted by its end points (x2, y2, [z2,]   x3, y3[, z3]), the direction vector, and the closest point.  2-D or 3-D:  for 2-D, the input points are two arguments each.  See also DistPtLine() and DistPtPlane()Yes
Ln( x ):  Natural logarithm of x,  (x > 0).  The power to which e (2.718281828459...) must be raised to yield xYes
Ln1p( x ):  (x > −1).  Natural logarithm of (x+1).  See Ln()Yes
Log( x ):  Logarithm (base 10) of x,  (x > 0).  The power to which 10 must be raised to yield xYes
Log2( x ):  Logarithm (base 2) of x,  (x > 0).  The power to which 2 must be raised to yield xYes
Lucas( N ):  The Nth element in the Lucas series {Lucas(n), n = 0,1,2,3,...}.
Lucas(0) = 2,  Lucas(1) = 1,  Lucas(n) = Lucas(n-2)+Lucas(n-1)
Yes
     M →  NavGrid             →  (Home)
MatrixCopy( newId, inId ):  Copy the data for saved matrix (Id=inId) to matrix (Id=newId).  (newIdinId).  The id's are in (1-20).  See also MatrixDel(), MatrixSave(), MatrixShow().No
MatrixDel( mtxId ):  Delete the saved matrix with id = mtxId.  See also MatrixSave(), MatrixShow().No
MatrixDet( N,  x11, x12, ...,  xNN ):  Determinant of the N × N matrix.  ( 2 ≤ N ≤ 4 ).  Total argCnt must be (N²+1).  See also MatrixInv()Yes
MatrixInv( N,  x11, x12, ...,  xNN ):  Inverse of the N × N matrix.  ( 2 ≤ N ≤ 4 ).  Total argCnt must be (N²+1).  See also MatrixDet()No
MatrixInvMod( N,  M,  x11, x12, ...,  xNN ):  Inverse of the N × N matrix (modulo M).  ( 2 ≤ N ≤ 4 ).  (3 ≤ M ≤ 255).  Total argCnt must be (N²+2).  See also MatrixInv(), MatrixDet()No
MatrixMult( N,  a11, a12, ..., aNN,  b11, b12, ..., bNN ):  Multiply the two N × N matrices.  ( 2 ≤ N ≤ 4 ).  Total argCnt must be (2N²+1).  See also MatrixMultId()No
MatrixMultId( mtxId1, mtxId2, mtxId3 ):  Multiply saved matrix (ID=mtxId1) and saved matrix (ID=mtxId2), and save the results as matrix (ID=mtxId3).  The mtxIds are in (1–20) and must all be different.  See also MatrixSave() to create a matrix, and MatrixShow() to review the matrix data.No
MatrixSave( N,  mtxId,  modId,  x11, x12, ...,  xNN ):  Save the N × N matrix as id mtxId for later use.  N is one of {2,3,4}.  mtxId is in (1–20).  When modId is zero, just save the matrix which may have real and integer values.  Otherwise, modId is one of {1,2,3} for use with HillCipher() with corresponding alphabets of {31,47,73} characters (and the modulus of the cipher).  The next N² arguments contain the matrix (in row order).  For modId not zero, the matrix entries must be integers in the range of zero to (alphabetSize-1), and the inverse modularmatrix is internally generated for use with HillCipher() decoding.  MatrixSave() does not permit variables as arguments.  See also MatrixShow() and HillCipher().No
MatrixShow( mtxId ):  Display the saved matrix with id mtxId.  If mtxId is zero, display a list of the attributes of all the saved matrices.  See also MatrixSave(), HillCipher().No
MatrixTrans( mtxIdTr, mtxId ):  Save Matrix (ID=mtxIdTr) as the the transpose of Matrix (ID=mtxId), and display its contents.  The mtxId's must be different and in (1–20).No
MatrixVecMult( mtxIn, vecIn, vecOut ):  Multiply the N×N matrix (ID=mtxIn) times the N×1 column vector (ID=vecIn) to produce the 1×N row vector (ID=vecOut.  N is a property of the saved data in the range (2-4).  See also VectorMtxMult(), MatrixMultId(), MatrixSave(), VectorSave().No
Max( x1, x2, ... ):  Maximum of the (2-10) argumentsYes
MaxAbs( x1, x2, ... ):  Maximum of the absolute values of the (2-10) argumentsYes
MidPt( x1, y1,  x2, y2 ):  Given two data points on the X-Y plane, (x1, y1) and (x2, y2), display the coordinates of the midpoint of the line defined by the two points.  See also Line(), Ymxb(), MidPt3D().No
MidPt3D( x1, y1, z1,  x2, y2, z2  ):  Given two data points in 3-D space, (x1, y1, z1) and (x2, y2, z2), display the coordinates of the midpoint of the line defined by the two points.  See also MidPt(), Line3D()No
Mileage( vehicle, units, amount, distance, cost ):  Keep track of gas mileage and cost – enter data at each fillup and get running totals and averages (e.g., miles/gal, miles/\$, \$/fillup, ...).  Vehicle is the vehicle-ID (either 1 or 2), units is units (1 → Imperial = gal,mi;  2 → Metric = l,km), distance is distance (mi,km) traveled since last fillup, amount is the number of (gal,l) to fill tank, and cost is the cost of the fillup.  The dollar sign (\$) is used as the universal currency symbol.  When amount is zero, simply generate a report.No
Min( x1, x2, ... ):  Minimum of the (2-10) argumentsYes
MinAbs( x1, x2, ... ):  Minimum of the absolute values of the (2-10) argumentsYes
Mod( a, b ):  The Mod() function operates on two integers, (a and b), with (b > 0).  The return value is defined as the amount by which a exceeds the largest integer multiple of b which is not greater than a.  Thus, Mod(17,4) = 3;  Mod(-17,4) = 1.  Mod(a,b) is always ≥ 0.  The standard definition above is extended here to allow real arguments, and to handle (b < 0) by convention such that Mod(a,-b) ≡ Mod(-a,b).  Note however that the % operator employs the definition used by C, C++, and Fortran – "the remainder from dividing b into a."Yes
Momemtum( m, v ):  Momentum is the product of a mass and its velocity.  Momentum is a vector quantity, with both magnitude and direction (that of the mass' velocity).  In a closed system, linear momentum is conserved (in both Newtonian and Relativistic settings).
Momentum(m,v) = mv
Yes
Mortgage( loan, rate, years ):  The Monthly Mortgage Payment for a loan of loan dollars at rate annual percent (e.g., 5.15, not 0.0515) for years years.  Result is composed of principal and interest only; escrow (e.g., taxes, insurance) is not included in the computation.  See also Refinance() and the Payoff*() functions.
Mortgage(P,R,Y) = (rP)/(1-(1/(1+r)m))
where  r = R/12,  and  m = Y×12
Yes
     N →  NavGrid             →  (Home)
NominalRate( effectiveRate, nPerYear ):  The nominal rate for an effective annual interest rate (effectiveRate), compounded nPerYear times per year.  (effectiveRate > 0), and nPerYear is an integer > 1.  The "nominal rate" is the rate per compound period.  See also EffectiveRate().No
Normalize( x1, x2, ... ):  Normalize a (2-20) element vector.  At least one element must be non-zero.  Divide each element by the vector length := Sqrt(sum of the squares of the elements)No
Normalize2( x1, x2, ... ):  Normalize a (2-20) element vector.  At least one element must be non-zero.  Divide each element by the value of the largest of the absolute values of the elements.  Normalize() is the more mathematically rigorous form.No
Normalize3( x1, x2, ... ):  Normalize a (2-20) element vector.  At least one element must be non-zero.  Divide each element by the sum of the absolute values of the elements.  Normalize() is the more mathematically rigorous form.No
     O →  NavGrid             →  (Home)
Octal( N ):  Display the integer argument N in octal.No
OhmsLaw( power, voltage, current, resistance ):  Compute electrical parameters.  Set two of the four arguments to zero and two to non-zero to compute the value of the two zero arguments:
• power = Power (watts)
• voltage = Voltage (volts)
• current = Current (amps)
• resistance = Resistance (ohms)
No
     P →  NavGrid             →  (Home)
Payoff( principal, rate, years, extra ):  Show impact of extra amount submitted with each mortgage payment starting at the first payment:
• principal = Initial loan amount
• rate = Annual interest rate (percent - e.g., 7.25)
• years = Number of years of initial loan
• extra = Extra amount with each payment (must be > 0)
Same as PayoffExtra().  See also Refinance(), Mortgage(), and the other Payoff*() functions.
No
Payoff2( payment, rate, balance, extra ):  Show impact of extra amount submitted with each future mortgage payment when the loan is partly paid off:
• payment = Monthly payment (principal + interest only: no escrow)
• rate = Annual interest rate (percent - e.g., 7.125)
• balance = Current balance (principal)
• extra = Extra amount with each payment (must be > 0)
Same as PayoffExtra2().  See also Refinance(), Mortgage(), and the other Payoff*() functions.
No
PayoffBiweekly ( principal, rate, years, extra ):  Show impact of bi-weekly mortgage payments starting at the first payment.  This technique calls for making payments every other week, each at exactly ½ of the monthly payment.  Paying more per year (approximately 13/12 as much) leads to a reduced total out-of-pocket expenditure.  Note that the real advantage of this technique is convenience (payments synchronized with bi-weekly paychecks) – one could realize about the same out-of-pocket savings by paying 1/12th more with each regular monthly payment.  This computation assumes that there is no extra charge for this payment schedule.  When the 4th argument (extra) is non-zero, show the impact of adding this amount to each biweekly payment.
• principal = Initial loan amount
• rate = Annual interest rate (percent - e.g., 5.875)
• years = Number of years of initial loan
• extra = Extra amount with each biweekly payment (must be ≥ 0).  (Set extra to zero to get biweekly impact only)
No
PayoffBiweekly2 ( payment, rate, balance, extra ):  Show impact of shifting to bi-weekly mortgage payments for a partly paid off loan.  This technique calls for making payments every other week, each at exactly ½ of the previous monthly payment.  Paying more per year (approximately 13/12 as much) leads to a reduced total out-of-pocket expenditure.  Note that the real advantage of this technique is convenience (payments synchronized with bi-weekly paychecks) – one can realize about the same out-of-pocket savings by paying 1/12th more with each regular monthly payment.  This computation assumes that there is no extra charge for this payment schedule.  When the 4th argument (extra) is non-zero, show the impact of adding this amount to each biweekly payment.
• payment = Monthly payment (principal + interest only: no escrow)
• rate = Annual interest rate (percent - e.g., 6.35)
• balance = Current balance (principal)
• extra = Extra amount with each biweekly payment (must be ≥ 0).  (Set extra to zero to get biweekly impact only)
No
PayoffExtra( principal, rate, years, extra ):  Show impact of extra amount submitted with each mortgage payment starting at the first payment:
• principal = Initial loan amount
• rate = Annual interest rate (percent - e.g., 7.25)
• years = Number of years of initial loan
• extra = Extra amount with each payment (must be > 0)
Same as Payoff().  See also Refinance(), Mortgage(), and the other Payoff*() functions.
No
PayoffExtra2( payment, rate, balance, extra ):  Show impact of extra amount submitted with each future mortgage payment when the loan is partly paid off:
• payment = Monthly payment (principal + interest only: no escrow)
• rate = Annual interest rate (percent - e.g., 7.125)
• balance = Current balance (principal)
• extra = Extra amount with each payment (must be > 0)
Same as Payoff2().  See also Refinance(), Mortgage(), and the other Payoff*() functions.
No
PayoffLump( payment, rate, balance, lumpSum ):  Show impact of a single lump sum payment on a partly paid off mortgage payoff profile:
• payment = Monthly payment (principal + interest only: no escrow)
• rate = Annual interest rate (percent - e.g., 6.625)
• balance = Current balance (principal)
• lumpSum = Lump sum payment (must be > 0)
No
PayoffProfile( principal, rate, years, extra, nYears ):  Show a payoff profile (with monthly details) while paying off a new mortgage starting at the first payment.  Set extra to zero to get the standard payoff profile:
• principal = Initial loan amount
• rate = Annual interest rate (percent - e.g., 5.875)
• years = Number of years of initial loan
• extra = Extra amount with each payment (must be ≥ 0)
• nYears = Number of years for which to show monthly results (1-5, silently enforced)
No
PayoffProfile2( payment, rate, balance, extra, nYears ):  Show a payoff profile (with monthly details) while paying off a partly paid off mortgage.  Set extra to zero to get the standard payoff profile:
• payment = Monthly payment (principal + interest only: no escrow)
• rate = Annual interest rate (percent - e.g., 5.75)
• balance = Current balance (principal)
• extra = Extra amount with each payment (must be ≥ 0)
• nYears = Number of years for which to show monthly results (1-5, silently enforced)
No
PayoffSurvey( payment, rate, balance ):  Show impact of various (internally generated) prepayment options on a partly paid off mortgage payoff profile:
• payment = Monthly payment (principal + interest only: no escrow)
• rate = Annual interest rate (percent - e.g., 6.5)
• balance = Current balance (principal)
No
PayoffView( principal, rate, years  ):  Show characteristics of paying off a new mortgage at the normal rate starting at the first payment
• principal = Initial loan amount
• rate = Annual interest rate (percent - e.g., 5.875)
• years = Number of years of initial loan
No
PayoffView2( payment, rate, balance ):  Show characteristics of paying off a partly paid off mortgage at the normal rate:
• payment = Monthtly payment (principal + interest only: no escrow)
• rate = Annual interest rate (percent - e.g., 5.75)
• balance = Current balance (principal)
No
PendPeriod( units, len ):  Period (seconds) of a pendulum of length len.  When units is zero, len is feet, otherwise meters.
PendPeriod(u,x) = 2π√ x/g
g is the appropriate standard gravity
Yes
PEnergy( units, mass, height ):  Potential Energy of an object of mass mass at rest at a height of heightUnits sets the units.  When units is zero, {PEnergy, mass, height} are {ft-lbf, lb, ft}, otherwise {J, kg, m}.
PEnergy(u,m,h)  =  gmh
g is the appropriate standard gravity
Yes
Permutations( total, n ):  The number of different ways that n things may be selected from total things.  Both arguments must be integers in (1–51), and (total > n).  See also Combinations()
Permutations(t,n) = t!/(t-n)!
Yes
Plane2( A1, B1, C1, D1,  A2, B2, C2, D2 ):  Given two planes in the form "Ax + By + Cz + D = 0", display the angle between them and the equation of the line at their intersection.  Same as IntersectPP().  See also the other Plane*() and Intersect*() family of functionsNo
PlaneEqn( A, B, C, D ):  Show various renditions of the equation of the plane:  "Ax + By + Cz + D = 0."  At least 1 of {A,B,C} must be non-zero.  See also the other Plane*() and Intersect*() family of functionsNo
PlaneLine( x1, y1, z1,   x2, y2, z2,   A, B, C, D ):  Show the intersection coordinates of the line defined by ( x1, y1, z1 ) and ( x2, y2, z2 ) and the plane defined by Ax + By + Cz + D = 0.  Same as IntersectLP().  See also the other Plane*() and Intersect*() family of functionsNo
PlanePoint( x, y, z,   A, B, C, D ):  Given a point and a plane defined by "Ax + By + Cz + D = 0",  show the distance between them, the intersection point, and the normal vector from the plane to the point.  See also DistPtPlane() and the other Plane*() and Intersect*() family of functionsNo
PlanePt2( x1, y1, z1,   x2, y2, z2 ):  Given 2 points ( x1, y1, z1 ) and ( x2, y2, z2 ) show the equation of the plane which passes through point 1 and perpendicular to the line formed by the 2 points.  See also the other Plane*() and Intersect*() family of functionsNo
PlanePt3( x1, y1, z1,  x2, y2, z2,   x3, y3, z3 ):  Given 3 points, show the plane they define and its normal vector.  See also the other Plane*() and Intersect*() family of functionsNo
Points( activity, weight, dist, min, sec ):  Aerobic Points for various activities - based on Dr Kenneth Cooper's bestseller, Aerobics.  General objective is to get a minimum of 4 workouts per week and a total of 30 points per week of aerobic exercise to gain the training effect.  Approximate calories burned are also reported.  Arguments as in the table below.  For example: "Points(running, 142, FIVEK, 21, 27)" yields "20.1 pts -- Running: 142 lbs, 3.10686mi in 21:27 =>   6:54/mi = 8.69 mph  (335 cals)".  See also Fitness(), HeartRate(), Karvonen(), Calories(), BMI()
activity   weight     dist    min    sec  ‡ Others | lbs miles min sec | AerobicDance, AerobicsHi†, AerobicsLo†, Basketball, lbs miles min sec | Handball, Hockey, Iceskating, Lacrosse, Racketball, lbs miles min sec | Rollerblading, Rollerskating, Rowing, SkiingCC†, lbs yards min sec | SkiingDH†, SkiingWater, Soccer, Squash, TennisD†, lbs yards min sec | TennisS†, Volleyball lbs meters min sec | lbs meters min sec | † Swimming__; MY=(male,yards), FY=(female,yards); lbs rpm min sec | MM=(male,meters), FM=(female,meters); lbs # holes min sec | † Aerobics__;  Lo=low-impact,  Hi=high-impact lbs # holes min sec | † Skiing__;  CC=cross-country,  DH=downhill lbs 0 min sec | † Tennis_;  D=doubles,  S=singles
No
Polar( x, y ):  The polar coordinates (distance from origin and angle (radians)) of the point defined by the cartesian coordinates (x, y)No
PopCount( N ):  Return the number of 1 bits in N, the 32-bit integer argument.  Same as BitCount()Yes
Power( work, time ):  Power is the rate of doing work.
Power(W,t) = W/t
Yes
PresentValue( futureValue, years, rate, nPerYear ):  The present quantity which will accumulate to the Future Value futureValue in years years at an annual interest rate of rate percent compounded nPerYear times per year.  If nPerYear is zero, simple interest is used.  See also FutureValue().Yes
PricePer( p1,n1,  p2,n2, ...  ):  Display the price-per-unit ratios  p1/n1p2/n2,  ...  (up to 6 pairs) for comparison purposes.  n1, n2, ... ≠ 0.  Similar to Ratios().No
Product( N ):  The product of the integers (1,2,...,N).  Same as Factorial() except:  Product(0) = 0,  Factorial(0) = 0! = 1Yes
Pythagorean( a, b ):  Length of the Hypotenuse of a right triangle with sides a and b:
Pythagorean(x,y)  =  +√ x² + y²
Yes
     Q →  NavGrid             →  (Home)
Quadratic( a, b, c ):  The roots to the 2nd order equation:
ax² + bx + c = 0,   where  (a ≠ 0)
No
Quadrature( a, b, expr )a b{expr(x)} dx.  Approximate result of integrating the expression (expr) from a to bA and b are the lower and upper bounds of the (dummy) variable in expr, and must be constants with (ab).  The expression expr must have exactly one variable, must be single-valued, and may be a single user-defined function or an expression with no user-defined functions.  The expression expr must be continuous over the specified range, and may include any single-valued function except { Rand(), IRand(), CoinFlip(), RockPS(), Dice() }.  Unpredictable results may occur when expr is not continuous or is otherwise ill-behaved.  Same as Integrate(), except Quadrature() always shows convergence of the approximate solution.  Quadrature() is strongly recommended.  Not eligible for CrunchJr History(Replay).No
Quartic( a, b, c, d, e ):  The roots to the 4th order equation
ax4 + bx3 + cx2+ dx + e = 0,   where  (a ≠ 0)
No
     R →  NavGrid             →  (Home)
RacePace( distance, hours, minutes, seconds ):  Pace (mm:ss/mi) for race of distance distance miles run in hours hours, minutes minutes, and seconds seconds.  Note that distance may be a constant or an expression, e.g., MARATHON, TENK, FIVEK, 100/1760, 0.8*KM, METRICMILE, HALFMARATHON, etcNo
RaceTime( distance, minutes, seconds ):  Time (hh:mm:ss) to run a race of distance distance miles run at a pace of minutes minutes and seconds seconds per mile.  Note that distance may be a constant or an expression, e.g., MARATHON, TENK, FIVEK, METRICMILE, etcNo
Yes
Rand( x, y ):  Return a random floating point value between x and y.  Note - not reproducible.  See also IRand(), CoinFlip(), RockPS(), RockSpock(), Dice().Yes
Rankine( fahrDegrees ):  Convert Fahrenheit temperature (fahrDegrees) to Rankine.  See also Kelvin().
Rankine(F)  =  F+459.67
Yes
Rates( numb, hrs, mins, secs ):  Display the average time for an action when it takes hrs hours, mins minutes, and secs seconds to do the action numb times.No
Rates2( numb, yrs, days, hrs ):  Display the average time for an action when it takes yrs years, days days, and hrs hours to do the action numb times.  For this computation, all years are 365 days.No
Ratios( v1,n1,  v2,n2, ...  ):  Display the ratios  v1/n1v2/n2,  ...  (up to 6 pairs) for comparison purposes.  n1, n2, ... ≠ 0.  Similar to PricePer().No
Refinance( currBalance, currPayment, currRate, newRate, loanCharge, loanLoan, newDuration ):  Impact (total cost, breakeven, % interest, et cetera) of refinancing a loan:
• currBalance = Current loan balance (principal)
• currPayment = Current loan payment (principal and interest components only)
• currRate = Current loan annual interest rate (percent - e.g., 7.125)
• newRate = New loan annual interest rate (percent - e.g., 5.375)
• loanCharge = Addition to principal (loan charge - e.g., closing costs, points)
• loanLoan = Addition to principal ("equity" payout - may be 0)
• newDuration = New loan duration (years)
Notes: (1) Do not include escrow payments (typically taxes and insurance) with currPayment,  (2) See also Mortgage() and the Payoff*() functions
No
RegPolygon( nSides, length ):  Information about the nSides-sided regular polygon with side length.  A regular polygon has all equal angles - which implies all equal sides (Note: all equal sides does not imply equal angles).  (2 < nSides < 13),  (length > 0).  Name, angle, area, and the radii of the inscribed and circumscribed circles are given.  See also RegPolygon2()No
Resistance( r1, r2, ... ):  Resistance for 2-10 resistors (r1, r2, ...) in serial, parallel.  All args > 0.No
Rgb( color, flag ):  Display the Red, Green, and Blue components of color in a table.  When flag is not zero, display an iPhone/iPod-Touch/iPad SDK Objective-C format representation.  Also, show the HSV representation.  Color is an integer representation of the color (e.g., 0x66AA33), and is silently kept in the range (0 - 0xFFFFFF).  See also RgbCompare(), HsvToRgb().No
RgbCompare( value1, value2, ... ):  Display the color and the Red, Green, and Blue components of the values (max=16) in a table, and show the corresponding HSV values.  Value is an integer representation of the color (e.g., 0x3DB733), and is silently kept in the range (0 - 0xFFFFFF).  The values are sorted and duplicate values are silently ignored.  See also Rgb(), HsvToRgb().  Same as Colors().No
RockPS( x ):  Simulate a random Rock-Paper-Scissors selection (return 0, 1 or 2).  The argument is necessary but ignored.  Not reproducible.  See also Rand(), IRand(), CoinFlip(), Dice(), RockSpock().Yes
RockSpock( x ):  Simulate a random Rock-Paper-Scissors-Lizard-Spock selection (return 0, 1, 2, 3 or 4).  The argument is necessary but ignored.  Not reproducible.  Based on comments by Sheldon Cooper (of CBS-TV's The Big Bang Theory)).  Outcomes:  Rock defeats (Lizard,Scissors);  Paper d. (Rock,Spock);  Scissors d. (Paper,Lizard);  Lizard d. (Spock,Paper).  Spock d. (Scissors,Rock).  See also Rand(), IRand(), CoinFlip(), Dice(), RockPS().Yes
Roman( N ):  Display the integer argument N (0 < N < 4 million) as a Roman NumeralNo
Roots( n, x ):  The n roots of xn is an integer in (2‐12)No
RootsAbs( n, x ):  The n roots of the absolute value of xn is an integer in (2‐12)No
Round( x ):  The integer nearest to x.  Values halfway between two integers select the nearest even integer.  Same as RoundEven().   See also RoundOdd().Yes
RoundDown( x ):  The greatest integer ≤ x.  Same as Floor().  Not to be confused with Trunc()Yes
RoundEven( x ):  The integer nearest to x.  Values halfway between two integers select the nearest even integer.  Same as Round().  See also RoundOdd()Yes
RoundOdd( x ):  The integer nearest to x.  Values halfway between two integers select the nearest odd integer.  See also Round(), RoundEven()Yes
RoundUp( x ):  The smallest integer ≥ x.  Same as Ceiling().  Not to be confused with Trunc()Yes
     S →  NavGrid             →  (Home)
Sigma( N ):  The sum of the integers (1,2,...,N).  Same as Summation()Yes
Sign( x ):  Return { -1, 0, 1 } for x = { <0, 0, >0 }Yes
SignZN( x ):  Return { -1, 1 } for x = { ≤0, >0 }Yes
SignZP( x ):  Return { -1, 1 } for x = { <0, ≥0 }Yes
Sin( r ):  Sine of the angle r (radians).  Same as Sinr()Yes
Sind( d ):  Sine of the angle d (degrees).Yes
Sinh( r ):  Hyperbolic sine of the angle r (radians).
Sinh(x) = ½(ex – e–x)
Yes
Sinr( r ):  Sine of the angle r (radians).  Same as Sin()Yes
Solver( nEqns, x1, x2, ... ):  Solve nEqns equations in nEqns unknowns (1 ≤ nEqns ≤ 4).  There are (nEqns*(nEqns+1)) more arguments, representing the equations.  Solver() is the same as Unknowns().  For example:
x + 2y + 3z =  4
2x +  y + 4z =  5
3x + 3y + 6z = 12

For these equations, using
Solver(3, 1,2,3,4, 2,1,4,5, 3,3,6,12)

yields:   x = 7,   y = 3,   z = -3
No
SpeedOfSound( temp ):  Approximate speed of sound (m/s) in calm, dry air at a temperature of temp °C.
SpeedOfSound(t)  ≈  331.36√ 1+t/273.15
Yes
Sphere4( x1, y1, z1,  x2, y2, z2,  x3, y3, z3,  x4, y4, z4 ):  Given 4 points in 3-D space, determine the center and the radius of the sphere they define. The arguments are the 4 points:  x1, y1, z1,  x2, y2, z2,  x3, y3, z3,   x4, y4, z4.No
Sqrt( x ):  The positive square root of x,  (x ≥ 0)
Sqrt(x) = +√ x
Yes
SqrtAbs( x ):  The positive square root of the absolute value of x.
SqrtAbs(v) = +√ |v|
Yes
Stats( x1, x2, x3, ... ):  Report statistics about the arguments.  Must have (3-16) arguments.  Show:  Number, Average, Standard Deviation, Median, Sum, Sum of the Squares, Max and MaxLoc, Min and MinLocNo
Sum( x1, x2, ... ):  Sum of the (2-16) argumentsYes
SumCubed( x1, x2, ... ):  Sum of the cubes of the (2-16) argumentsYes
SumInv( x1, x2, ... ):  Sum of the inverses of the (2-16) arguments.  All arguments must be non-zeroYes
SumInvCubed( x1, x2, ... ):  Sum of the cubes of the inverses of the (2-16) arguments.  All arguments must be non-zeroYes
SumInvSq( x1, x2, ... ):  Sum of the squares of the inverses of the (2-16) arguments.  All arguments must be non-zeroYes
Sumkxk( x, n )k=1,n{k(xk)}   (x ≠ 0, 1)Yes
Summation( N ):  The sum of the integers (1,2,...,N).  Same as Sigma()Yes
SumNCubed( N ):  The sum of the cubes of the integers (1,2,...,N).Yes
SumNSquared( N ):  The sum of the squares of the integers (1,2,...,N).Yes
SumOfPowers( n, p )m=1,n{mp}  where n and p are both integers, (n > 1), and (0 < p < 11)Yes
SumSq( x1, x2, ...):  Sum of the squares of the (2-16) argumentsYes
     T →  NavGrid             →  (Home)
Tan( r ):  Tangent of the angle r (radians).  Same as Tanr()Yes
Tand( d ):  Tangent of the angle d (degrees).Yes
TangentCircle( r1, r2, r3 ):  Given the radii of 3 mutually tangent circles (r1, r2, r3), return the radius of a 4th circle which is tangent to all 3 input circlesYes
Tanh( r ):  Hyperbolic tangent of the angle r (radians).
anh(x) = (ex – e–x)/(ex + e–x)
Yes
Tanr( r ):  Tangent of the angle r (radians).  Same as Tan()Yes
Tip( bill ):  Array of tip candidates for bill bill.  See also BillSplit().No
Trunc( x ):  The integer component of x.  Same as Int().  Not to be confused with Floor(), Ceiling(), RoundDown(), RoundUp().
xTrunc(x)
Int(x)
Floor(x)
RoundDown(x)
Ceiling(x)
RoundUp(x
π 334
-π -3-4-3
Yes
     U →  NavGrid             →  (Home)
Unknowns( nEqns, x1, x2, ... ):  Solve nEqns equations in nEqns unknowns (1 ≤ nEqns ≤ 4).  There are (nEqns*(nEqns+1)) more arguments, representing the equations.  Unknowns() is the same as Solver().  For example:
w +  x +  y +  z = 10
w + 2x +  y + 6z = 32
2w +       y +  z =  9
3w + 2x + 5y + 4z = 38

For these equations, using
Unknowns(4, 1,1,1,1,10, 1,2,1,6,32, 2,0,1,1,9, 3,2,5,4,38)

yields:
w = 1    y = 3
x = 2    z = 4
No
     V →  NavGrid             →  (Home)
VectorCopy( newId, inId ):  Copy the data for saved vector (Id=inId) to vector (Id=newId).  (newIdinId).  The id's are in (1-20).  See also VectorDel(), VectorSave(), VectorShow().No
VectorDel( id ):  Delete the saved vector with id = id.  See also VectorSave(), VectorShow().No
VectorDot( id1, id2 ):  Compute the vector dot product of the two saved vectors (id1, id2).  The vectors must of the same length.  The id's may be the same.  Same as DotProdId().  See also VectorSave(), VectorShow().Yes
VectorMtxMult( vecIn, mtxIn, vecOut ):  Multiply the N×1 row vector (ID=vecIn) times the N×N matrix (ID=mtxId) to produce the 1×N column vector (ID=vecOut).  N is a property of the saved data in the range (2-4).  See also MatrixVecMult(), MatrixMultId(), MatrixSave(), VectorDot(), VectorSave().No
VectorNorm( nmId, inId ):  Create vector (Id=nmId) as a normalized copy of vector (Id=inId).  At least one element must be non-zero.  Divide each element by the Sqrt(sum of the squares of the elements).  The id's need not be different.No
VectorSave( N,  id,  v1, v2, ...,  vN ):  Save the N-element input vector as Id = id for later use.  N is in (2–16).  id is in (1–20).  The next N arguments contain the vector elements.  VectorSave() does not permit variables as arguments.  See also VectorDel() and VectorShow().No
VectorShow( id ):  Display the saved vector with Id = id.  If id is zero, display a list of the attributes of all the saved vectors.  See also VectorSave(), VectorDel().No
VectorSort( sortId, inId, dir, dupl ):  Save Vector (ID=sortId) as a sorted copy of Vector (ID=id), and display its contents.  The id's must be in (1–20) and need not be different.  dir is 0/1 for ascending/descending, and dupl is 0/1 for discard/keep duplicates.No
VectorTrans( trId, inId ):  Save Vector (ID=trId) as the transpose of Vector (ID=inId), and display its contents.  The id's must be in (1–20) and need not be different.No
VolBrick( length, width, depth ):  Volume of the rectangular solid with the sides length, width, and depth.
VolBrick(L,W,D) = LWD
Yes
VolCone(r,h) = πr²h/3
Yes
VolCube( side ):  Volume of a cube of side side.
VolCube(s) = s³
Yes
VolCylinder(r,h) = πr²h
Yes
VolFrustum(b,t,h) = πh(b²+bt+t²)/3
Yes
VolOblSpheroid( axis1, axis2 ):  Given an ellipse with semi-axes (axis1, axis2), an oblate spheroid is formed by the rotation of the ellipse about its minor (shorter) axis.  (Note that a semi-axis is analogous to a radius, not a diameter.)  The Volume of an oblate spheroid is given by:
VolOblSpheroid(a,b) = (4/3)πa²b,  with (a > b)
Yes
VolPpiped( a, b, c,  r, s, t ):  Volume of a parallelepiped of sides a, b, c and internal angles between them r, s, t (degrees).
VolPpiped(a,b,c, r,s,t) = abc × Sqrt{ 1 + 2Cos(r)Cos(s)Cos(t) – Cos²(r) – Cos²(s) – Cos²(t) }
Yes
VolProlSpheroid( axis1, axis2 ):  Given an ellipse with semi-axes (axis1, axis2), an oblate spheroid is formed by the rotation of the ellipse about its major (longer) axis.  (Note that a semi-axis is analogous to a radius, not a diameter.)  The Volume of a prolate spheroid is given by:
VolProlSpheroid(a,b) = (4/3)πab²,  with (a > b)
Yes
VolPyramid( baseArea, altitude ):  Volume of a regular pyramid of base area baseArea and altitude altitude.
VolPyramid(b,a) = ba/3
Yes
VolSphCap( sphR, ht ):  Volume of a spherical cap of sphere radius sphR and height htSphR is the radius of the sphere, not the cap.  A spherical cap is also known as a dome.  See also VolSphCap2().
VolSphCap(r,h) = πh²(3r-h)/3
Yes
VolSphCap2( capR, ht ):  Volume of a spherical cap of cap radius capR and height htCapR is the radius of the cap, not the sphere.  A spherical cap is also known as a dome.  See also VolSphCap().
VolSphCap2(b,h) = πh(h²+3b²)/6
Yes
VolSphere( r ):  The volume of a sphere of radius r
VolSphere(r) = (4/3)π
Yes
     W →  NavGrid             →  (Home)
WindChill( temp, windSpeed ):  Display the windchill factor (°F) for a given temperature temp (°F) and wind speed windSpeed (mph).  (temp < 50°F,  windSpeed > 3 mph).  The Windchill factor is the apparent temperature on exposed skin due to the wind.No
WindChillMetric( temp, windSpeed ):  Display the windchill factor (°C) for a given temperature temp (°C) and wind speed windSpeed (km/h).  (temp < 10°C,  windSpeed > 5 km/h).  The Windchill factor is the apparent temperature on exposed skin due to the wind.No
Work( F, d ):  Work is the product of a force and the distance through which it acts (only the distance traveled in the direction of the force).
W(F,d) = Fd
Yes
     Y →  NavGrid             →  (Home)
Ymxb( x1, y1,  x2, y2 ):  Given two data points on the X-Y plane, (x1, y1) and (x2, y2), compute the slope (m), the y-intercept (b), the distance between the two points, the midpoint, and show the equation of the line containing the points.  Same as Line().  See also Line3D().No
     ♦ →  NavGrid             →  (Home)