Welcome to RpnCalc Financial

New: Trouble downloading? See the FAQ

A full-function programmable financial calculator for your Android phone.

Note: install the OI File Manager to enable the file picker which will let you load and save programs.



Twitter Updates

Get RpnCalc news on Twitter

Introduction

RpnCalc Financial is a financial, math, and scientific RPN calculator. It contains a rich feature set for a wide variety of needs.

This is an RPN calculator. If you don't know what that means, or are not a fan of RPN, this may not be the calculator for you. If you are a business professional and you were trained on an RPN financial calculator, then this is the Android calculator for you.

If you're not sure, we recommend the free RpnCalc application, which will give you the chance to explore and decide if this is the interface for you.

Available on the Android Market.

Follow this link on your Android phone to visit the Android Market and download the application, or point your barcode reader to the code on the right.

RpnCalc Financial will be available soon on the Archos market. Watch our twitter feed or this spot for news.

News and updates available by following @RpnCalc on Twitter.



What's New

Version 1.25 introduces several new display features. These appear as new shifted functions on the right column of keys in landscape mode.



Using RpnCalc Financial

Quick Overview

In general, enter numbers using digits, ., EEX, and CHS, (for change sign). Use ENTER to enter the values. See Keyboard Shortcuts, below for keyboard shortcuts.

Use the f and g buttons for shifted functions.

The calculator uses a 16-level stack (see stack size, below). The top four levels are labeled X,Y,Z,T and are shown on the display.

There are 20 memory registers, plus some registers used for financial calculations. The STO and RCL buttons can access the memory registers. The buttons write to the statistics registers and RCL + buttons let you recall them directly.

The menu key allows you to switch calculator modes. This can be done any time and does not interrupt any in-progress calculation. Want to compute compound interest on esin(30)% interest rate? Just start in scientific mode and switch to financial mode.

Contents:



An introduction to RPN

Some useful links:

How RPN works

In a nutshell, Reverse Polish Notation means that calculator functions are performed as soon as you command them. With RPN, you enter two numbers, press +, and the numbers are added immediately.

In contrast, an algebraic calculator remembers that you pressed + and executes it later. For example, if you were to enter "1 + 2 × 3 =" into an algebraic calculator, the addition would not occur until the very end.

Because of RPN's "do what I say" approach, the "=" key and parenthesis keys would be superfluous. RPN calculators do have an "Enter" key, on the other hand, to separate one numeric entry from another.

As a practical example, let's look at the "1 + 2 × 3" example from above. Instead of entering the expression as it's written, we calculate it the way we would actually solve the problem with pencil and paper. That is, first we would multiply 2 and 3, then we would add 1.

On an RPN calculator, the process would be to first enter the value 2 with the key sequence 2 ENTER. Next, we would multiply by 3 with the sequence 3 ×. Finally, we would add 1 with the sequence 1 +.

This may all seem a little confusing to someone who is used to the algebraic style of keyboard input, but after a little use, you will come to find RPN to be a more intuitive interface.

In short, RPN works the way your brain actually works, not how you write things down on paper.

A point to ponder: algebraic calculators actually use a mixture of algebraic notation and RPN. For two-number functions, like addition, an algebraic calculator uses algebraic notation, while for one-number functions like square-root or 1/x, you find yourself using RPN. For example, an algebraic calculator computes square roots by first having you enter the number, and then pressing the key.

How would you compute √(4²+3²) on an algebraic calculator? Damned if I know, and I bet you don't know either. Maybe it's in the manual. Either way, I guarantee it's really a mixture of algebraic and RPN.

The stack

The stack is a storage area within the calculator that holds values until they can be processed. Both algebraic and RPN calculators have stacks, but RPN calculators expose the stack to the user.

The stack in RpnCalc and RpnCalc Financial holds sixteen numbers. The most recent four numbers are shown on the display and known as X, Y, Z, and T, with X being the most recent.

Try it: Key in a number and then press the ENTER key. See that the number you entered as X has been copied to Y. When you enter another number, it becomes the new X value. Press ENTER again. Now you'll see that Y has been moved to Z and X has been copied to Y as before.

Key in yet another number and press ENTER again. Now, the old Z value has been moved to T, Y has been moved to Z, and X has been copied to Y.

The display might now look like:

T: 123.00
Z: 456.00
Y: 789.00
789.00

If you keep entering numbers in this way, the stack will fill up with data, with the most recent data always in the X display. This process is known as "pushing" the stack, since each new value pushes the previous values deeper into the stack.

You can review the contents of the stack by pressing the R↓ key. After you've pressed this key sixteen times, the stack will be back to where it was.

Two-number functions, such as + take the most recent two numbers (X and Y) from the stack, perform the operation on them, and place the results back onto the stack as X.

Because two values were replaced by one value, the stack is then "popped", with older values making their way back to the front of the stack.

Try it: we'll re-visit the "1 + 2 × 3" problem, but this time enter the numbers in the order they appear. Since adding 1 to 2x3 is the last thing to happen, the value 1 will sit in the stack until the end.

You enterThe display showsNotes
C T: 0.00
Z: 0.00
Y: 0.00
0.00
Clear the stack
1 T: 0.00
Z: 0.00
Y: 0.00
1
X = 1
ENTER T: 0.00
Z: 0.00
Y: 1.00
1.00
X pushed to Y
2 T: 0.00
Z: 0.00
Y: 1.00
2
X = 2
ENTER T: 0.00
Z: 1.00
Y: 2.00
2.00
Stack pushed again
3 T: 0.00
Z: 1.00
Y: 2.00
3
X = 3
× T: 0.00
Z: 0.00
Y: 1.00
6.00
X receives 2×3; stack is popped.
+ T: 0.00
Z: 0.00
Y: 0.00
7.00
X receives 1+6; stack is popped.

Another example

Let's evaluate:

    3+7²
    ————
    8+5

On paper, you would first find the value 7², then for 3+7², then the value for 8+5, and then divide them. With RPN, we do the exact same thing.

(Note: we use the menu to switch to scientific or basic mode — there's no x² key in financial mode.)

You enterThe display showsNotes
MENU Switch to scientific mode
3 ENTER T: 0.00
Z: 0.00
Y: 3.00
3.00
First value entered
7 T: 0.00
Z: 0.00
Y: 3.00
7
X = 7
f T: 0.00
Z: 0.00
Y: 3.00
49.00
X receives 7²
+ T: 0.00
Z: 0.00
Y: 0.00
52.00
X and Y are added
8 ENTER T: 0.00
Z: 52.00
Y: 8.00
8.00
8 entered, previous value pushed into stack.
5 + T: 0.00
Z: 0.00
Y: 52.00
13.00
X receives 8+5
÷ T: 0.00
Z: 0.00
Y: 0.00
4.00
And finally, we divide.

One last stack trick

Watch carefully what happens you press the enter key. The stack gets pushed, but now there's two copies of the X value on the stack.

T: 123.00
Z: 456.00
Y: 789.00
789.00

If you enter another number, the X value gets replaced with the new number. But if you want, you can just go ahead and use the duplicate copy in the stack.

Let's compute 3 + 7² without using the x² button.

You enterThe display showsNotes
3 ENTER T: 0.00
Z: 0.00
Y: 3.00
3.00
First value entered
7 ENTER T: 0.00
Z: 3.00
Y: 7.00
7.00
Both X and Y are 7
x T: 0.00
Z: 0.00
Y: 3.00
49.00
X receives 7 x 7
+ T: 0.00
Z: 0.00
Y: 0.00
52.00
X and Y are added

Finally, let's compute 5³:

You enterThe display showsNotes
5 ENTER ENTER T: 0.00
Z: 5.00
Y: 5.00
5.00
5 is entered three times on the stack
x T: 0.00
Z: 0.00
Y: 5.00
25.00
5 x 5
x T: 0.00
Z: 0.00
Y: 0.00
125.00
5 x 5 x 5

Calculator functions:

General Calculator Functions


Shifted functions
fUsed to access the shifted functions (displayed in orange.)
gUsed to access the lower shifted functions (displayed in blue.)
Data Entry
09 .Data entry
CHSChange sign. For example, for -3, enter 3 CHS.
EEX Exponent for scientific notation. For example, key 1 . 2 EEX 9 for 1.2×109 (1.2 billion.)
Note: the CHS key can also change the sign of the exponent. For example: 1 . 2 EEX 9 CHS will enter 1.2×10-9
Enter Enter current value, pushing it onto the stack and making the calculator ready for a new value.
Clear last keystroke during data entry; clear X register otherwise.
CClear stack
ACClear everything
X↔YSwap X,Y values
R↓ Rotate stack down. The calculator has a 16-level stack, so pressing this button 16 times will bring the stack back where it was.
LstX Recall most recent X value
πPi
PREFIX Show the current X value in full precision.
f 09 Set the number of displayed digits after the decimal point. See also FIX, SCI, and ENG under scientific mode for more display options.
f .Set scientific mode display
Basic Arithmetic
+Add X and Y
-Subtract X from Y
×Multiply X and Y
÷Divide X into Y
Memory Registers
STO Enter a digit to store X to memory register 0-9. Enter . followed by a digit to store into register 10-19.
Example: STO 5 will store X into register 5.
RCLRecall specified register
Example: RCL . 2 will recall register 12.
STO + Add X to a memory register
Example: STO + 2 will add X to register 2.
STO  Subtract X from a memory register
STO × Multiply X to a memory register
STO ÷ Divide X into a memory register
RegDisplay all registers
 

Percentages

Percentages
% Compute X% of Y
Example: 30% of 8000.
Solution: Enter 8000 ENTER 30 %
Answer: 2400
Note: The base value is left in the Y register for you in case you want to compute other percentages. Just delete the previous result with and enter a new percentage. For example, to find 25% of 8000, just enter 25 %
Note: Formula is X = X*Y*.01
Δ% Compute percent change from Y to X
Example: $240 is how much of a mark-up from $200?
Solution: Enter 200 ENTER 240 Δ%
Answer: 20%
Note: Again, the base value is left in the Y register for you in case you want to compute other percentages.
Note: Formula is X = 100*(X-Y)/Y
%T Determine the percentage of Y represented by X. (Financial mode only.)
Example: 2400 is what percentage of 8000?
Solution: Enter 8000 ENTER 2400 %T
Answer: 30%
Note: Formula is X = 100*X/Y
 

Statistics

The RPN calculator can perform various statistical calculations on X and Y values. (If you don't care about the Y values, just ignore them.)

The calculator uses a few memory registers for statistics calculations. These are:

R1nthe number of values that have been entered
R2∑Xthe sum of all X values
R3∑X²the sum of all X² values
R4∑Ythe sum of all Y values
R5∑Y²the sum of all Y² values
R6∑XYthe sum of all X×Y values
Statistics Functions
Clear statistics registers
∑+ Add X,Y to statistics registers
∑− Subtract X,Y from statistics registers (this is the best way to 'undo' ∑+)
|x| Return mean X,Y values to X,Y registers
s Return standard deviation of X,Y
L.R. Linear Regression; return slope and intercept (scientific mode)
RCL ∑+ Recall specified statistics registers. This may recall one or two values, depending on the registers you choose. For example, RCL ∑+ 2 would recall the ∑X and ∑Y registers into X and Y. (You can also recall any of R1-R6 directly, but this feature saves you the trouble of remembering which memory register is which statistics value.)
 

There are more statistics functions in the Financial calculator mode, below.


Financial Calculator Mode


Use the menu to switch to financial calculator mode.

Sign convention

Money that goes out is represented as negative numbers. Money that comes in is represented by positive numbers.

For example, if you deposit money in the bank, you would enter the initial deposit as a negative number since this is money leaving your pocket to go to the bank. When you withdraw the money later, the number is a positive number since it's money coming back to you.

If you borrow money and then pay it back in installments, the initial loan ("present value") would be a positive number since it's money coming to you. Your monthly payments would be negative numbers since they're money going out.

Negative Numbers

In the examples below, negative numbers are frequently given. These are entered using the CHS key, not the - key (which indicates subtraction.)

Example: A $10,000 expenditure is entered as 10000 CHS. In these notes, we will write it as -10000.


Functions:

Date Calculations

Dates are entered as numbers in "mm.ddyyyy" format (or "dd.mmyyyy" in D.MY mode). For example, Feb 23, 2009 would be entered as 2.232009.

Date Calculations
D.MY Switch date format to "day-month-year" mode. The display will show "D.MY" when in day-month-year mode.
M.DY Switch date format to "month-day-year" mode.
DATE Take the Y register as a date and the X register as the number of days. Compute the future date X days after Y. If X is negative, return a date prior to Y.
Example: What is the date 60 days after Feb 23 2009?
Solution: Enter: 2.232009 Enter 60 g DATE
Answer: April 24, 2009.
ΔDYS Find the number of days between two dates. The X and Y registers both contain dates and this function finds the number of days between them. The true number of days is returned in X and the number of days based on 30-day months is returned in Y. Enter the earlier day first, into Y
Example: How many days between Feb 23, 2008 and October 11, 2009?
Solution: Enter: 2.232008 Enter 10.112009 f ΔDYS
Answer: 595 days.
 

Interest Calculations

Begin vs End Mode

Are payments due at the start of a period, or at the end? It makes a difference. The BEG and END keys change the payment mode.

Odd Periods

It's possible that a calculation will involve a fraction of a payment period. For instance, you might open a bank account in the middle of the month at a bank which does its interest calculations at the end of the month. Your first month's interest won't be computed over a complete month.

When an odd period is in effect, the odd period may be calculated with compound or simple interest. The "C" flag selects compound interest, and can be set or cleared with the sequence STO EEX

Data entry vs computation

If you enter or compute a number, then press one of n, i, PV, PMT, or FV, then the value will be stored in the corresponding interest register.

If you enter an interest-related value, and then immediately press another interest-related button, that value will be computed instead. Try out some of the examples below, and it will become clear.

Interest Calculations
FIN Clear all financial registers.
n Enter the number of periods (e.g months) for the interest calculation.
12x Multiply X by 12 and store as n. A useful shortcut when time was specified in years but interest is compounded monthly.
i Enter the periodic interest rate in percent.
12÷ Divide X by 12 and store as interest rate. A useful shortcut when interest is specified as annual percentage but interest is compounded monthly.
PV Enter the present value
PMT Enter the periodic payment
FV Enter the future value
BEG Set "Begin" mode, indicating that payments occur at the beginning of the payment period.
END Set "End" mode, indicating that payments occur at the end of the payment period. This is the default.
STO EEX Set or clear the "C" flag, which indicates that compound interest will be used on odd periods (see above).
RCL Followed by one of n, i, PV, PMT, or FV. This recalls the specified financial register.
RCL Followed by 12× or 12÷. This recalls the specified financial register and divides or multiplies by 12, respectively.
FV Compute future value from other four terms.
Example: You start depositing $100 into a savings account at the start of every month. The account earns 6.25% interest, compounded monthly. How much will you have at the end of 10 years?
Solution: Enter:
  • FIN
  • BEG (payments at the start of each month.)
  • -100 PMT (negative because it's money going out.)
  • 6.25 12÷
  • 10 12x (period = 10 years x 12 = 120 months)
  • FV
Answer: $16,698.71
PV Compute present value from other four terms.
Example: You open a savings account that pays 5% interest and deposit $50 at the end of every month afterwards. You want to get $5000 back at the end of four years (48 months). What initial deposit do you need?
Solution: Enter:
  • FIN
  • 5 12÷ (Annual interest rate/12 = monthly interest rate.)
  • -50 PMT (payment = -$50)
  • 4 12x (period = 4 years x 12 = 48 months)
  • 5000 FV (Receive $5000 at the end.)
  • PV
Answer: $1924.21 initial deposit.
i Compute interest from other four terms.
Example: You open a savings account with $1000 and deposit $50 at the end of every month afterwards. You want to get $5000 back at the end of four years (48 months). What interest rate do you need to earn?
Solution: Enter:
  • FIN (clear financial registers)
  • -1000 PV (present value = -$1000; negative because it's money going out.)
  • -50 PMT (payment = -$50)
  • 4 12x (period = 4 years x 12 = 48 months)
  • 5000 FV (Receive $5000 at the end.)
  • i
Answer: 1.204% interest per month. (Multiply by 12 or use RCL 12÷ to get 14.45% per year.)
PMT Compute periodic payment from other four terms.
Example: You borrow $100,000 at 8% interest, compounded monthly. What does the monthly payment need to be to be completely paid off after 30 years?
Solution: Enter:
  • FIN
  • 100000 PV (present value = $100,000 received)
  • 8 12÷ (Annual interest rate/12 = monthly interest rate.)
  • 30 12x (period = 30 years x 12 = 360 months)
  • PMT
Answer: $733.76
n Compute number of periods from other four terms.
Example: You loan somebody $40,000 at 10% interest, compounded monthly. They pay you back $2000 per month. How many months will it take to pay you back?
Solution: Enter:
  • FIN
  • -40000 PV (set PV = -40,000; negative because it's money going out)
  • 10 12÷ (10% interest divided by 12 = monthly interest)
  • 2000 PMT (set payment = 2000; positive because it's money coming in.)
  • n
Answer: 22 months. This value has been rounded up to the next whole number of periods. The final payment will be less than the others.
Example: How much is the final payment?
The way we solve this is find the future value after 21 months.
Solution: Enter:
  • 21 n (set periods to 21)
  • FV
Answer: $1,923.46.
nf Compute exact number of periods from other four terms. This is identical to the n function except that it can return a fractional number of periods. (Note that the nf function is the shifted function above the CHS button in landscape mode, and the upper-left button in portrait mode.)
Example: same loan as before, exactly how long until it's paid off?
Solution: Enter:
  • FIN
  • -40000 PV (same values as above)
  • 10 12÷
  • 2000 PMT
  • nf
Answer: 21.97 months.
INT Compute simple interest. Treats i as the annual interest rate and n as the number of days. Returns the total interest on PV. Result is calculated using both 365-day years and 360-day years (30-day months). Returns i365 in Z, -PV in Y, and i360 in X.
Example: You loan somebody $5,000 at 10% simple interest. How much interest do they owe after 60 days?
Solution: Enter:
  • FIN
  • -5000 PV (set PV = -5,000; negative because it's money going out)
  • 10 i
  • 60 n
  • INT
Answer: X = $83.33 interest due based on 360-day interest, Y = $5000 principal due, Z = $82.19 interest due based on 365-day interest. To compute total due, just enter + (360-day) or R↓ + (365-day).
AMORT Compute amortization from financial registers and number of payments to be amortized. Returns the amount applied toward interest in X, the amount applied toward principal in Y, the total number of payments in n, and the remaining balance in PV.
Example: You borrow $100,000 at 8% interest, compounded monthly on a 30-year loan. Your monthly payment is $733.76. After five years (60 months), how much interest have you paid and how much principal have you paid?
Solution: Enter:
  • FIN
  • 100000 PV
  • 8 12÷
  • -733.76 PMT
  • 60 AMORT
Answer: $39,095.81 interest, $4929.79 principal.
Example: How about after another 5 years?
Solution: PV and n were updated after the last example, and interest and payment haven't changed, so just enter:
  • 60 AMORT
Answer: $36,680.91 interest, $7344.69 principal.
Amort Compute and display a complete amortization table.
 

Net Present Value and Internal Return Rate

Net Present Value is the value of a proposed investment described as a series of cash flows, both negative (money going out) and positive (money received). The basic concept is very similar to the Present Value calculations of compound interest, except that instead of constant payments, we have varying cash flows.

In plain English, Net Present Value asks the question, "What is the value to me right now of this investment, relative to what I could get if I just put my money in the bank at X% interest?"

For example, suppose you bought a restaurant for $10,000 and put $1000 into it the first year, and $500 the second year, and made $500 profit the third year, and $2000 profit each of the next three years, and then sold it for $15,000 the year after that. Also suppose you could have just invested your money at 10%. Is the restaurant worth it? The NPV calculation tells you yes, that it's worth $487 more to than just putting it in the bank.

The IRR (Internal Rate of Return) calculation answers the next question, which is "Just what rate of return is this restaurant going to bring?" The IRR calculation gives the answer: 10.77%

NPV and IRR
CFo Enter the first cash flow value in an NPV or IRR calculation. The X register is copied to memory register 0, the n register is set to zero.
CFi Enter the next cash flow value in an NPV or IRR calculation. The n register is incremented and memory[n] is set to X. There are only 20 memory registers in the calculator, so you can only enter 19 values with the CFi key.
Ni Enter a "repeat" count for the most recent CFi value. This saves you the trouble of repeatedly using the CFi function to re-enter the same value. It also allows cash flow computations of more than 20 values.
NPV Compute Net Present Value from interest and the cash flow values entered above.
Example: The restaurant example from above.
Solution: Enter:
  • -10000 CFo (Initial outlay = $10,000)
  • -1000 CFi (First year, $1000 loss)
  • -500 CFi (Second year, $500 loss)
  • 500 CFi (Third year, $500 profit)
  • 2000 CFi (Fourth year, $2000 profit)
  • 3 Ni (There were three years in a row with the same profit)
  • 15000 CFi (Sold the restaurant.)
  • 10 i (set 10% interest)
  • NPV
Answer: $487.53
IRR Compute Internal Rate of Return for the cash flow values entered above.
Example: The restaurant example from above, what's the rate of return on this restaurant investment?
Solution: Assuming the NPV problem from above is still in memory, enter:
  • IRR
Answer: 10.77%
RCLRecall a memory register, which contain cash flows (starting at register 0). This is one way to review your cash flow values.
Example: Review the second year cash flow.
Solution: Enter:
  • RCL 2 (Second year cash flow is -$500)
STOStore to a memory register, which contain cash flows (starting at register 0). This is one way to modify your cash flow values.
Example: Change the second year loss to $1000.
Solution: Enter:
  • -1000 STO 2
RCL Ni Recall the repeat count for the cash flow indicated by n. You can change n to retrieve any cash flow.
STO Ni Set the repeat count for the cash flow indicated by n.
Example: Change the fourth cash flow repeat count to 2.
Solution: Enter:
  • 4 n
  • RCL Ni (review the 4th Ni value)
  • 2 STO Ni (change the 4th Ni value)
  • 5 n (return n to its proper value)
RCL CFi Recall the cash flow for the cash flow indicated by n and decrease n by one. This is a handy way to review all of your cash flow values.
Example: Review all the cash flows.
Solution: Enter:
  • RCL CFi (5th cash flow)
  • RCL CFi (4th cash flow)
  • RCL CFi (3rd cash flow)
  • RCL CFi (2nd cash flow)
  • RCL CFi (1st cash flow)
  • RCL CFi (cash flow zero)
  • 5 n (return n to its original value)
Example: Review all the cash flows and repeat counts.
Solution: Enter:
  • RCL Ni (5th repeat count)
  • RCL CFi (5th cash flow)
  • RCL Ni (4th repeat count)
  • RCL CFi (4th cash flow)
  • RCL Ni (3rd repeat count)
  • RCL CFi (3rd cash flow)
  • RCL Ni (2nd repeat count)
  • RCL CFi (2nd cash flow)
  • RCL Ni (1st repeat count)
  • RCL CFi (1st cash flow)
  • RCL CFi (cash flow zero)
  • 5 n (return n to its original value)
NPV Compute and display the complete NPV table.
 

Bond Pricing

See Ehow.com and moneyinstructor.com for a discussion on bond prices.

In short, bonds are issued with a "face value" which is what the issuer will pay the bond holder when the bond matures. In addition, the issuer will also pay out a fixed sum, called a coupon payment, on a regular basis (typically twice a year) to the bond holders.

Bonds are usually sold for either a higher value than face value (premium) or a lower value than face value (discount). Bonds also have a risk factor associated with them, which can affect their initial price.

The bond functions of this calculator assume a bond with a face value of $100. The annual coupon payment, in percent, is written to PMT. The desired overall yield, in percent, is written to i. The purchase price (per $100 face value) is written to PV. The bond purchase date is entered into Y, and the maturity date is entered into X.

Bond Pricing
PRICE Compute the bond purchase price you should pay to achieve the desired overall rate of return.
Example: A bond with a 6.5% annual coupon rate that matures on May 1, 2015. Purchase date is Feb 23, 2009. You want an 8% return on your investment.
Solution: Enter:
  • 6.5 PMT
  • 8 i
  • 2.232009 ENTER
  • 5.012015 PRICE
Answer: You should pay $92.78 per $100 of face value.
YTM Compute the bond's Yield To Maturity given purchase price (per $100 of face value), coupon payment rate, maturity date, and purchase date.
Example: A bond with a 6.25% annual coupon rate purchased for $90 on Feb 23, 2009. Bond matures on May 1, 2025. What is the overall yield of this bond?
Solution: Enter:
  • 6.25 PMT
  • 90 PV
  • 2.232009 ENTER
  • 5.012025 YTM
Answer: This bond gives a yield of 7.31%
 

Depreciation

RpnCalc can compute depreciation using the straight-line method (asset loses a fixed amount of value every year), the declining balance method (asset loses a percentage of its remaining value every year), and the sum-of-year-digit method (see Wikipedia article for an explanation.)

For all depreciation methods, you first enter the asset's new value into PV, the salvage value into FV, the number of years into n, and the year for which you want the depreciation into X. For the declining balance method, you also enter the declining balance factor (typically 200%) into i.

Depreciation
SL Compute straight-line depreciation. The depreciation for year X is returned in X. The remaining depreciable value is returned in Y.
Example: A machine worth $20,000 has a scrap value of $1000 after five years. What is the depreciation in year 2?
Solution: Enter:
  • 20000 PV
  • 1000 FV
  • 5 n
  • 2 SL
Answer: $3800 depreciation in year 2, $11,400 depreciable value remaining.
SOYD Compute sum-of-year-digits depreciation. The depreciation for year X is returned in X. The remaining depreciable value is returned in Y.
Example: A machine worth $20,000 has a scrap value of $1000 after five years. What is the depreciation in year 2?
Solution: Enter:
  • 20000 PV
  • 1000 FV
  • 5 n
  • 2 SOYD
Answer: $5066.67 depreciation in year 2, $7600 depreciable value remaining.
DB Compute declining balance depreciation. The depreciation for year X is returned in X. The remaining depreciable value is returned in Y.
Example: A machine worth $20,000 has a scrap value of $1000 after five years. Using a factor of 200% (double declining balance), what is the depreciation in year 2?
Solution: Enter:
  • 20000 PV
  • 1000 FV
  • 5 n
  • 200 i
  • 2 DB
Answer: $4800 depreciation in year 2, $6200 depreciable value remaining.
Note: in the examples above, since the values for PV, FV, and n haven't been changing, there's no need to actually re-enter them.
 

Statistics Functions

Financial mode provides a few more statistics functions beyond those provided by the basic calculator, above.

Statistics Functions
x,w Weighted average. Enter a series of values and weights with the ∑+ button, then use x,w to return the weighted average.
Example: You purchase three tickets for $140 each, two tickets for $190 each, two tickets for $220 each, and four tickets for $280 each. What is the average price you paid for a ticket?
Solution: Enter:
  • 140 ENTER 3 ∑+
  • 190 ENTER 2 ∑+
  • 220 ENTER 2 ∑+
  • 280 ENTER 4 ∑+
  • x,w
Answer: $214.55
y,r Linear Estimation. This function uses linear regression to place a line through the x,y points which were entered with ∑+ and then return the Y value that best matches the X value in X. The result is returned in X while a reliability factor is returned in Y.
Example: A weather balloon returns the following table of altitude and temperature data:
AltTemp
025
100020
200016
300012
40004
What is the expected temperature at 3500?
Solution: First enter the Alt,Temp data into the statistics registers, then enter your X value and press y,r. Remember to enter Y (Temp) first:
  • 25 ENTER 0 ∑+
  • 20 ENTER 1000 ∑+
  • 16 ENTER 2000 ∑+
  • 12 ENTER 3000 ∑+
  • 4 ENTER 4000 ∑+
  • 3500 y,r
Answer: Temperature 7.90, reliability 0.99.
x,r Linear Estimation. This function uses linear regression to place a line through the x,y points which were entered with ∑+ and then return the X value that best matches the Y value in X. The result is returned in X while a reliability factor is returned in Y.
Example: Same weather balloon as above; at what altitude would we expect the temperature to be zero?
Solution: Assuming the data is still in the statistics registers, enter:
  • 0 x,r
Answer: Altitude 5,080, reliability 0.99.

Scientific Calculator Functions

Display and Data Modes
Bin, Oct, Dec, HexChange base. See below for more information about hex mode.
Fix, Sci, Eng Set fixed-point, scientific, or engineering notation. Choose a display mode and enter a single-digit precision, e.g. FIX 2
D/R/G Switch between degrees, radians, and gradians
Scientific Math Functions
ModCompute Y mod X
√xCompute square root of X
Compute square of X
e^xCompute e to X power
10^xCompute 10 to X power
lnCompute natural log of X
logCompute log base 10 of X
y^xCompute Y to power of X
1/xCompute 1/X
SINCompute sine of X
COSCompute cosine of X
TANCompute tangent of X
ASINCompute arcsine of X
ACOSCompute arccosine of X
ATANCompute arctangent of X
INTReturn integer part of X
FRAC Return fraction part of X
X!Compute X factorial
Conversions
R→P Rectangular to polar; convert X,Y to R,θ
P→R Polar to rectangular; convert R,θ to X,Y
HMS→H Hours.mmss to hours
Example: How many hours is 2:20:33?
Solution: Enter 2.2033 H→HMS
Answer: 2.34 hours
H→HMS Hours to hours.mmss
Example: What is 1.8 hours in hours, minutes, seconds?
Solution: Enter 1.8 HMS→H
Answer: 1:48:00
Hint: Use SHOW to see all the digits.
D→RAD Degrees to radians
RAD→D Radians to degrees
Permutations
P(x,y) Return number of permutations of X items from a population of Y
Example: How many ways to draw three marbles from a sack of 8?
Solution: Enter 3 ENTER 8 P(x,y)
Answer: 336
C(x,y) Return number of combinations of X items from a population of Y
Example: Same as above, but the order doesn't matter.
Solution: Enter 3 ENTER 8 C(x,y)
Answer: 56
Boolean operations (binary, octal, or hex mode)
AND Compute X & Y
OR Compute X | Y
XOR Compute X ^ Y
<< Compute Y << X
>> Compute Y >> X


Keyboard Shortcuts

If your Android phone has a keyboard (such as the G1), then keyboard keys can be used as shortcuts for certain buttons.

The digit keys, decimal point, and 'E' keys on your keyboard correspond to the same buttons on the calculator. Likewise, the +, -, *, / keys represent the +, -, ×, and ÷ buttons.

In hex mode, the A through F keys enter hex digits.

Keyboard shortcuts:
Ff
0…9 09
..
EEEX (exponent)
CCHS (change sign)
+ - * / + - × ÷
DEL
EnterEnter
XX↔Y
RRCL
SSTO

Menus

The Android MENU button brings up the RpnCalc Financial menu. The items on the menu include:

Copy and Paste

To use copy and paste, press and hold (long press) the X display. A menu will appear with the following options:


More on stack operations

Normally, when you begin entering a number with the numeric entry keys (digits, decimal point, eex), the stack automatically lifts to make room. That is, as soon as you push the first key, the stack lifts up one space to allow you to enter data into the X register.

The same happens if you enter data in another way, such as recalling a register or using the π key.

The most significant exception to this rule is the ENTER key. In this case, the ENTER key both terminates numeric entry and lifts the stack, copying the X value into Y, so the same value is in both X and Y. When this happens, the next numeric entry does not lift the stack. Instead, the new data replaces the data in X.

Likewise, the key, when used to clear X, also causes the calculator to not lift the stack when the next numeric value is entered.

Most arithmetic operations on two numbers, such as addition, will operate on the front two values on the stack, X and Y, remove them, and replace them with the result. In the process, the stack drops back down one level.

A few arithmetic functions, such as percents, and several financial calculations, do not drop the stack. Instead, the previous Y value is left in Y. The reason for this is to allow you to re-use Y for other calculations.

A trick: whenever the stack is popped, the deepest item in the stack gets copied. This means you can fill the stack with a single value, and then perform all the operations you want on that value while it keeps getting copied.

This is easiest to use when the stack depth is set to four instead of sixteen (see stacksize, below). Suppose you want to get a list of powers of two. What you would do is enter 2 ENTER ENTER ENTER to fill the stack with the value 2. Then, just start pressing the × over and over again. Because the T register is copied after each operation, the stack will remain full of 2's for as long as you want.

Stack Size

The stack size can be changed via the preferences menu item. The stack can either be sixteen levels or four levels. The deeper stack allows more complicated operations but can be confusing sometimes.

In addition, calculator programs written for a calculator with a four-level stack will likely fail when executed on a calculator with a sixteen-level stack. Even if you use a sixteen-level stack for most operations, you may need to set the stack size size to four.

For ease of operation, the default value for stack size is "Auto", which causes the calculator to have a sixteen-level stack normally, but switch to a four-level stack when executing a program.


Hex Mode

When in hexadecimal mode, the meaning of a few of the buttons and keys changes. In particular, you will note that the top row of buttons have been relabeled with the letters 'A' through 'F'. While in hex mode, the math functions previously associated with those buttons are replaced with boolean arithmetic operations.

Likewise, the 'A' through 'F' keys on the keyboard will enter the corresponding hex digits.

In particular, the 'F' key is no longer available as a shortcut to the f calculator button. This will probably cause you some confusion the first few times you try to use f DEC to return to decimal mode. However, you should quickly get used to using the f button on the screen instead.


Developer's Notes

RpnCalc can be launched with the "org.openintents.action.CALCULATOR" intent. When the user exits the calculator, the final X value will be a double value in the extras "X" entry of the returned intent. The Y, and Z values will also be returned. See OpenIntents.org for full details.

This allows any application to launch a calculator for the user.


Frequently Asked Questions

Q: I can't get this app to download.
A: Several people have reported this problem. It's a known bug in the Android Market and affects many, if not all apps. It's not specific to RpnCalc.

A1: Many people who have trouble installing apps from the market have reported that if they log onto the Google "Talk" application, the problem goes away. It doesn't make any sense, but there you have it. Give this a try before reporting problems.

A2: It is reported that you can re-verify your credit card by clicking https://checkout.google.com/main?ccUpdated=true which will cause the market to re-verify your card and unblock the transaction.

A3: If reconnecting to Google "Talk" doesn't help, cancel the order (you'll get a refund) and try again. If too much time has passed to cancel the order, request a cancellation through Google Checkout and I'll cancel it for you.

A4: Another common problem is that your phone might be running a firmware version that the Android Market doesn't recognize. This typically happens after your vendor sends a system upgrade without coordinating with the Android Market. When this happens, most paid apps become unavailable on the market, and apps you've already purchased can no longer be downloaded. This problem usually resolves itself within two weeks as the vendor scrambles to get their new firmware version registered at the market.

A5: Did you "root" (jailbreak) your phone? If so, there's nothing to be done — the Android Market won't send paid apps to root'ed phones for security reasons. All you can do at this point is request a refund through Google Checkout.

For more on this subject, see Android help forum How to resolve Market Place stuck at "Authorizing Purchase"

If you still have a problem, contact me with a detailed description of the symptoms.

Q: I can't find RpnCalc Financial on the Android market.
A: There have been a few incidents where a carrier pushed out a system upgrade without coordinating with the Android Market first. This results in paid applications all disappearing from the device and the market. This last happened with the Samsung Epic 4G in Feb 2011. It is also suspected of happening again to the HTC Aria. These problems usually resolve themselves in a week or so.

The best explanation of this problem is found on the support thread "Missing Applications On Marketplace".

Known issues:

Q: I'm buying a new phone. Is there a way to download RpnCalc Financial to it without needing to pay again?
A: No problem. The Android Market remembers your purchases. Once you've downloaded RpnCalc Financial, you can always download it again for free, as long as you're still using the same gmail account you originally used when you bought it.

Q: Why does it need permission to write to SD card?
A: It's used by programming mode to save and restore your programs.

Q: "No file picker found, see manual" — what now?
A: Install the OI File Manager on your system. It's available for free on the market.

Q: Is RpnCalc Financial compatible with the HP12C?
A: Do you mean really, truly, stand-up-in-court compatible? No it's not. To truly be compatible, it would have to run the same microcode as a real HP12C, which it doesn't do. In addition, there are known differences in the numeric rounding algorithm and in the handling of bad input data.

If you anticipate that you'll ever be on the witness stand in a lawsuit while the opposing attorney asks you pointed questions about whether or not you used an approved calculator to compute whatever it is the lawsuit is about, then this is not the product for you. Your humble narrator has been on the wrong side of that witness stand, and believe me, it's no fun.

But if you need a day-to-day financial calculator that's always with you, that doesn't take up any extra space in your pocket, and has a user interface you'll find familiar, then this is the calculator app for you.

Q: How do I switch from financial mode to scientific (or basic) and back?
A: The device's menu key lets you switch between the calculator's various operating modes. It also lets you bring up the built-in help pages.

Q: Where is the Clx button?
A: Replaced by the button, which is better. The button deletes one character when you use it during data input, and acts like the old Clx button the rest of the time.

Q: I press 'PMT' (or one of the other financial keys) and it doesn't compute the value.
A: Upgrade to the latest release. Older releases required that you press the "Find" key first, but that feature was removed by popular request.

Q: Can you make it display commas between the digits?
A: It should be doing that already, but there seems to be a bug on the Motorola Droid device which we're looking into now. If you see this on anything other than a Droid, please write to us.

Q: Does it support programming?
A: It does as of version 1.8 See Programming with RpnCalc Financial.

Q: I get different answers on the HP12.
A: If it's only a penny, that's normal. RpnCalc uses a different rounding algorithm than the HP12 and sometimes that last digit can be different. In the cases we've examined, RpnCalc was more accurate. If it's more than a few cents, please write to us immediately so we can look into it.

A2: If your problem occurs doing interest calculations, double-check that the Begin/End mode is correct and that odd-period compounding is correct. Experience has shown that the vast number of unexpected results were caused by one of these two settings.

A3: I have two reports of wildly wrong results that make no sense at all. In both cases, uninstalling the application and reinstalling it fixed the problem. There's no logical explanation for this other than perhaps the initial install got corrupted somehow. At any rate, this may be worth a try.

Q: Why are period calculations always a whole number like 22, instead of say 21.7743?
A: This is standard practice. Financial institutions aren't interested in dealing with fractions of time periods ("Dear mortgage holder, please send your final payment in 0.7743 months instead of the usual 1 month." — it just wouldn't work.) Instead, the number of payment periods is always a whole number of months, but the final payment is less than the others. See the example above to see how it's done. However, if you want a fractional answer, use the nf button instead.

Q: I purchased RpnCalc Financial, and then lost it after a [reboot/system crash/phone upgrade/insert disaster here]. What do I do now?
A: No reason to worry; I get paid the same either way. Wait — maybe that's not the answer you were hoping for. OK, seriously, don't worry. The Android Market remembers your purchases. Once you've downloaded RpnCalc Financial, you can always download it again for free, as long as you're still using the same gmail account you originally used when you bought it. You can even move your apps from phone to phone if you upgrade your device.

Q: I want to change my android market account
A: I don't know any automated way to do this. For now, go ahead, change accounts, purchase another copy of RpnCalc Financial, and then contact me for a refund on your first copy.


Differences between RpnCalc Financial and an HP12


This software comes without any warranty, implied or otherwise.

Questions and comments can be directed to Ed Falk, efalk (at) users.sourceforge.net.