DataMuseum.dk

Presents historical artifacts from the history of:

CP/M

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about CP/M

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦607b7d48f⟧ TextFile

    Length: 2816 (0xb00)
    Types: TextFile
    Names: »AMORTION.BAS«

Derivation

└─⟦a2831e659⟧ Bits:30004217 MBASIC r5.21 og BASIC programmer
    └─ ⟦this⟧ »AMORTION.BAS« 

TextFile

10 	print"Amortionsplan"
15	print"============="
20	print
30	print"		Fast ydelse ";
40	input R
50	print"		   Antal år ";
60	input Y
70	print"		  Hovedstol ";
80	input P
90	print"	  Rentefod (% P.A.) ";
100	input I
109 rem Omregn rentefod fra procent til decimal
110	I=I/100
120	print" Antal ydelser pr. år ";
130	input N
140	print"Start udskrift med år ";
150	input X
159 rem Start udskrift ved årets begyndelse
160	X=int(X)
170	C1=0
180	I2=0
190	I3=0
200	J0=0
210 	N1=N
220	K=72
230	B0=P
240	A1=0
250	A2=0
259 rem Er løbetiden mindre end 1 år?
260	if int(Y)>=1 then goto 270
261 rem Justering af variabler så
262 rem et år udskrives delvist
263	N1=((Y-int(Y))*12)/12*N
264	J0=J0+1
265	goto 280
269 rem For-next-løkke for hvert år
270	for J0=1 to int(Y)
280	if J0<X then goto 410
289 rem test om side er slut
290	if K+N+3<64 then goto 400
298 rem gå frem til næste sides begyndelse
299 rem (der antages at være 72 linier pr. side
300 	for K1=K+1 to 72
310	lprint
320	next K1
330	lprint
340	lprint "Amortionsplan"
350	lprint "============="
345	lprint
350	lprint "Hovedstol =";P;"Kr."
355	lprint " Rentefod =";I*100;"% i";Y;"år"
360	lprint "   Ydelse =";R;"Kr."
370	lprint
380	lprint "Ydelse nr.","Rentebeløb",
385	lprint "Afdrag","Restgæld","akkum. rente"
388 rem Variablen K tæller antal udskrevne linier pr. side
390	K=9
400	K=K+N+3
410	for J1=1 to N1
418 rem beregn det rentebeløb den nuværende
419 rem ydelse dækker, og afrund resultatet
420	I1=int((B0*I/N)*100+.5)/100
429 rem tæl antal ydelser til dato
430 	C1=C1+1
438 rem Beregn det afdrag den nuværende
439 rem ydelse dækker, og afrund resultatet
440	A=R-I1
449 rem samlet afdrag betalt til dato
450 	A1=A1+A
459 rem Beregn ny restgæld
460 	B0=P-A1
468 rem Hvis sidste ydelse, så skal
469 rem den ny restgæld være lig nul
470	if C1<>N*Y then goto 520
480	R=R+B0
490	A=A+B0
500	A1=A1+B0
510	B0=0
519 rem Samlet rente betalt til dato
520 	I2=I2+I1
529 rem Samlet rente betalt i år
530	I3=I3+I1
539 rem Samlet afdrag betalt i år
540	A2=A2+A
548 rem Begynd udskrift ?
549 rem Hvis ja, så udskriv beregnede værdier
550	if J0<X then goto 570
560	lprint J1,I1,A,B0,I2
570	next J1
578 rem Sidste ydelse ?
579 rem Hviv ja, så rund af og udskriv
580	if C1<>N*Y then goto 600
590	lprint "sidste ydelse =";
595	lprint (int(R*100+.5))/100
598 rem udskrift begyndt ?
599 rem Hvis ja, så udskriv årets renter og afdrag
600	if J0<X then goto 640
610	lprint
620	lprint "år";J0;"=";,I3,A2
630 	lprint
639 rem Løbetid slut ?
640	if J0>Y then goto 720
649 rem Genetablering af 'årlige' variable
650	I3=0
660	A2=0
670	next J0
675	J0=J0+1
678 rem Er der brug for at udskrive et år delvist
680 if Y<>J0 then goto 263
720	print
730	end
«eof»