The Museum of HP Calculators

# FinCalc (German) for the HP-41C

This program is by Rolf M. Kocher and is used here by permission.

This program is supplied without representation or warranty of any kind. Rolf M. Kocher and The Museum of HP Calculators therefore assume no responsibility and shall have no liability, consequential or otherwise, of any kind arising from the use of this program material or any part thereof.

## Overview

Calculates periods, interest, ann.payement, unique payment and capital at the end of the interest-/payment-periods. Full documentation existant at rmkocher@gmx.net

## Program

```1 u LBL 'FINCALC '' Initialisieren
2 CF 01
3 CF 02
4 SF 27
5 FIX 2
6 ' N I R K0 KE '' Tastenbeschreibung
7 PROMPT
8 u LBL A '' Hauptroutine N = Anzahl Verzinsungsperioden berechnen
9 'N BERECHNEN
10 AVIEW
11 SF 01
12 XEQ 07
13 XEQ 08
14 XEQ 09
15 XEQ 10
16 XEQ 16
17 XEQ 21
18 RTN
19 u LBL B '' Hauptroutine I = Zinssatz berechnen
20 'I BERECHNEN
21 AVIEW
22 SF 02
23 XEQ 06
24 XEQ 08
25 XEQ 09
26 XEQ 10
27 XEQ 16
28 XEQ 22
29 RTN
30 u LBL C '' Hauptroutine R = periodische Zahlung berechnen
31 'R BERECHNEN
32 AVIEW
33 XEQ 06
34 XEQ 07
35 XEQ 09
36 XEQ 10
37 XEQ 13
38 XEQ 23
39 RTN
40 u LBL D '' Hauptroutine K0 = Anfangskapital berechnen
41 'K0 BERECHNEN
42 AVIEW
43 XEQ 06
44 XEQ 07
45 XEQ 08
46 XEQ 10
47 XEQ 14
48 XEQ 24
49 RTN
50 u LBL E '' Hauptroutine KE = Endkapital berechnen
51 'KE BERECHNEN
52 AVIEW
53 XEQ 06
54 XEQ 07
55 XEQ 08
56 XEQ 09
57 XEQ 15
58 XEQ 25
59 RTN
60 u LBL 11 '' Berechnung N (für Iteration)
61 1
62 RCL 02
63 +
64 RCL 12
65 X^Y
66 STO 19
67 RCL 04
68 *
69 RCL 03
70 RCL 02
71 1
72 +
73 *
74 RCL 19
75 1
76 -
77 RCL 02
78 /
79 *
80 +
81 RCL 05
82 -
83 STO 15
84 RTN
85 u LBL 12 '' Berechnung I (für Iteration)
86 1
87 RCL 12
88 +
89 RCL 01
90 Y^X
91 STO 20
92 RCL 04
93 *
94 RCL 03
95 RCL 12
96 1
97 +
98 *
99 RCL 20
100 1
101 -
102 RCL 12
103 /
104 *
105 +
106 RCL 05
107 -
108 STO 15
109 RTN
110 u LBL 13 '' Berechnung R (direkt)
111 RCL 05
112 RCL 04
113 RCL 02
114 1
115 +
116 RCL 01
117 Y^X
118 *
119 -
120 RCL 02
121 1
122 +
123 /
124 RCL 02
125 1
126 +
127 RCL 01
128 Y^X
129 1
130 -
131 RCL 02
132 /
133 /
134 STO 03
135 RTN
136 u LBL 14 '' Berechnung K0 (direkt)
137 1
138 RCL 02
139 +
140 RCL 03
141 *
142 RCL 02
143 1
144 +
145 RCL 01
146 Y^X
147 1
148 -
149 *
150 RCL 02
151 /
152 RCL 05
153 -
154 CHS
155 RCL 02
156 1
157 +
158 RCL 01
159 Y^X
160 /
161 STO 04
162 RTN
163 u LBL 15 '' Berechnung KE (direkt)
164 RCL 02
165 1
166 +
167 RCL 01
168 Y^X
169 1
170 -
171 RCL 02
172 /
173 RCL 03
174 *
175 1
176 RCL 02
177 +
178 *
179 RCL 02
180 1
181 +
182 RCL 01
183 Y^X
184 RCL 04
185 *
186 +
187 STO 05
188 RTN
189 u LBL 06 '' Eingabe N (mit bestehender Vorgabe)
190 RCL 01
191 'PERIODEN ?
192 PROMPT
193 STO 01
194 RTN
195 u LBL 07 '' Eingabe I (mit bestehender Vorgabe)
196 RCL 02
197 100
198 *
199 'ZINS <%>
200 PROMPT
201 X=0?
202 1 E-6
203 100
204 /
205 STO 02
206 RTN
207 u LBL 08 '' Eingabe R (mit bestehender Vorgabe)
208 RCL 03
209 'ZAHLUNG P.A. ?
210 PROMPT
211 STO 03
212 RTN
213 u LBL 09 '' Eingabe K0 (mit bestehender Vorgabe)
214 RCL 04
215 'K.0 ?
216 PROMPT
217 STO 04
218 RTN
219 u LBL 10 '' Eingabe KE (mit bestehender Vorgabe)
220 RCL 05
221 'K.E ?
222 PROMPT
223 STO 05
224 RTN
225 u LBL 16 '' Initialisieren der Iteration für I und N
226 'VORBEREITEN. .
227 AVIEW
228 0
229 STO 17
230 12 '' Subroutine: I soll berechnet werden
231 FS? 01
232 11 '' Subroutine: N soll berechnet werden
233 STO 18
234 1 E-8 '' Min-Wert I für Iteration
235 FS? 01
236 0 '' Min-Wert N für Iteration
237 STO 11
238 STO 12
239 XEQ IND 18
240 STO 14
241 1.6 '' Max-Wert I für Iteration
242 FS? 01
243 1000 '' Max-Wert N für Iteration
244 STO 12
245 STO 13
246 XEQ IND 18
247 STO 16
248 0.8 '' Mittlerer Wert I für Iteration
249 FS? 01
250 500 '' Mittlerer Wert N für Iteration
251 STO 12
252 XEQ IND 18
253 FIX 0
254 u LBL 17 '' Schalufenanfang
255 'RECHNE
256 ARCL 17
257 AVIEW
258 1
259 ST+ 17
260 RCL 17
261 16 '' Feste Anzahl Schlaufen für Iteration
262 X=Y?
263 RTN '' Bedingtes Verlassen der Schlaufe
264 XEQ 18
265 XEQ IND 18
266 GTO 17 '' Schlaufenende
267 u LBL 18 '' Iteration nach Newton für Berechnung von I, resp. N
268 RCL 14
269 RCL 15
270 +
271 ABS
272 RCL 15
273 RCL 16
274 +
275 ABS
276 X>Y? '' Verzweigung hoch-tief
277 GTO 19 '' Lineare Interpolation 'hoch'
278 RCL 15
279 STO 14
280 RCL 12
281 STO 11
282 RCL 13
283 +
284 2
285 /
286 STO 12
287 RTN
288 u LBL 19 '' Lineare Interpolation 'tief'
289 RCL 15
290 STO 16
291 RCL 12
292 STO 13
293 RCL 11
294 +
295 2
296 /
297 STO 12
298 RTN
299 u LBL 21 '' Ausgabe N
300 CF 01
301 CF 27
302 FIX 2
303 RCL 12
304 STO 01
305 'N=
306 ARCL 01
307 PROMPT
308 u LBL 22 '' Ausgabe I
309 CF 02
310 CF 27
311 FIX 2
312 RCL 12
313 STO 02
314 100
315 *
316 'I=
317 ARCL X
318 PROMPT
319 u LBL 23 '' Ausgabe R
320 CF 27
321 FIX 0
322 'R=
323 ARCL 03
324 PROMPT
325 u LBL 24 '' Ausgabe K0
326 CF 27
327 FIX 0
328 'K0=
329 ARCL 04
330 PROMPT
331 u LBL 25 '' Ausgabe KE
332 CF 27
333 FIX 0
334 'KE=
335 ARCL 05
336 PROMPT
337 END '' Programmende
```