Casio fx-3900P
Datasheet legend
Ab/c:
Fractions calculation
AC: Alternating current BaseN: Number base calculations Card: Magnetic card storage Cmem: Continuous memory Cond: Conditional execution Const: Scientific constants Cplx: Complex number arithmetic DC: Direct current Eqlib: Equation library Exp: Exponential/log functions Fin: Financial functions Grph: Graphing capability Hyp: Hyperbolic functions Ind: Indirect addressing Intg: Numerical integration Jump: Unconditional jump (GOTO) Lbl: Program labels LCD: Liquid Crystal Display LED: Light-Emitting Diode Li-ion: Li-ion rechargeable battery Lreg: Linear regression (2-var. stats) mA: Milliamperes of current Mtrx: Matrix support NiCd: Nickel-Cadmium recharg. batt. NiMH: Nickel-metal-hydrite rech. batt. Prnt: Printer RTC: Real-time clock Sdev: Standard deviation (1-var. stats) Solv: Equation solver Subr: Subroutine call capability Symb: Symbolic computing Tape: Magnetic tape storage Trig: Trigonometric functions Units: Unit conversions VAC: Volts AC VDC: Volts DC |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Casio fx-3900P
A bit less sophisticated than its advanced counterpart, the fx-4000P, the fx-3900P is nevertheless a capable programmable scientific calculator. Its 100-step program memory is a bit cramped, but its programming model is comprehensive, and it features the same full compliment of scientific functions as the fx-4000P.
Limited program memory means that the programmer needs to be innovative. For instance, if you wish to compute the Gamma function, an algorithm requiring a lot of constants will not do; constants take up memory, either in the form of program steps or using up number registers. Fortunately, I recently received an e-mail from Robert H. Windschitl who wrote about a compact approximation of Stirling's formula. With his algorithm, the following 100-step program computes the logarithm of the Gamma function to 9+ digits of accuracy across its entire domain, including negative arguments for which the function is defined. (Negative arguments require that you first place the calculator in radians mode in order to get the correct result.)
Ans→A:
Abs A→B:
1→C:
Lbl 1:
BC→C:
B+1→B:
9>B⇒Goto 1:
(ln (Bsinh B-1+1÷810÷B²²÷B²)÷2+ln B-1)B+ln (2π÷B)÷2-ln C→C:
0>A⇒ln (-π/A/sin πA)-C->C:
C