From aurs01!aurw90!gingell@mcnc.org Wed Jun 12 17:49:58 1991 Subject: Financial calculator program for HP-48 by Glenn Robertson ------------------------------------------------------------------------ DOCUMENTATION FOR FINANCIAL PROGRAM General: "FIN" is a financial program for calculating the standard five financial variables; N, I, PV, PMT, FV using the "SOLVE" feature of the HP48. Two additional variables allow the user to specify the compounding frequency (CF) and the payment frequency (PF). Instructions for Use: For the following it is assumed that all variables have been loaded into a sub-directory named FIN: 1. enter sub-directory FIN 2. press "SOLVE" (left-shift `7') 3. press "SOLVR" (first soft key `A') 4. press NXT (goto page 2 of the "SOLVR" menu) 5. press RESET (establishes variables for first time use) 6. press NXT (goto page 1 of the "SOLVR" menu) 7. use the "SOLVR" menu as per chapter 17 in Users Manual There are three user programs associated with FIN ("DSPL" on page one, and "BE" and "RESET" on page two of the "SOLVE" menu): - DSPL DiSPLays the contents of the seven variables (N, I, PV, PMT, FV, CF, and PF) - BE Toggles between cases where payments are made either at the Beginning of a period or at the End of a period (displays either a "B" or an "E") - RESET RESETs the display to two decimal places, the variables N, I, PV, PMT, and FV to zero, and the variables CF and PF to one. Note: You must run RESET the first time FIN is used to establish variables (see step 5 above). Example: Calculate the monthly payments on a $150,000 loan for 10 years at an annual interest rate of 9.5%. 10 ENTER 12 * N N=120 Number of monthly payments = 120 9.5 I I=9.5 Annual Interest = 9.5% 150000 PV PV=150000 Present Value = $150,000 0 FV FV=0 Future Value = 0 NXT 12 CF CF=12 Annual Compound Frequency = 12 12 PF PF=12 Annual Payment Frequency = 12 NXT left-shift PMT Monthly payments = -$1,940.96 Note: By convention, moneys paid out are negative, moneys received are positive. Comments (good or bad) are appreciated! Glenn Robertson 73117,675 ------------------------------------------------------------------------ %%HP: T(3)A(D)F(.); DIR FI { '(PV+PMT* (1+((1+I/(100*cf)) ^(cf/pf)-1)*B) /((1+I/(100*cf)) ^(cf/pf)-1))* ((1+((1+I/(100* cf))^(cf/pf)-1)) ^N-1)+PV+FV=0' { N I { "DSPL" \<< DSPL \>> } PV PMT FV cf pf { "BE" \<< BE \>> } { } { "RESET" \<< RESET \>> } } } DSPL \<< CLLCD 'N' RCL \->STR " N: " SWAP + 1 DISP 'I' RCL \->STR " I: " SWAP + 2 DISP 'PV' RCL \->STR " PV: " SWAP + 3 DISP 'PMT' RCL \->STR "PMT: " SWAP + 4 DISP 'FV' RCL \->STR " FV: " SWAP + 5 DISP 'cf' RCL \->STR " CF: " SWAP + 6 DISP 'pf' RCL \->STR " PF: " SWAP + 7 DISP 7 FREEZE \>> BE \<< IF 'B==0' THEN "B" 1 'B' STO ELSE "E" 0 'B' STO END \>> RESET \<< 2 FIX 0 'N' STO 0 'I' STO 0 'B' STO 0 'PV' STO 0 'PMT' STO 0 'FV' STO 1 'cf' STO 1 'pf' STO \>> EQ FI END