|
|
DataMuseum.dkPresents historical artifacts from the history of: CP/M |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about CP/M Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 2432 (0x980)
Types: TextFile
Names: »PANT.PAS«
└─⟦08ea08c61⟧ Bits:30003924 PolyPascal programmer
└─⟦this⟧ »PANT.PAS«
└─⟦09235ab48⟧ Bits:30003065 Demoprogrammer K-Z til Pascal bog
└─⟦this⟧ »PANT.PAS«
└─⟦092727b26⟧ Bits:30005927 Demoprogrammer til Pascal bog (Jet-80)
└─⟦this⟧ »PANT.PAS«
PROGRAM pant;
VAR
dage, aar : INTEGER;
rest, ydelse, delydelse, r, rente, afdrag : REAL;
maaned : STRING(.3.);
BEGIN
WRITE(CLRHOM);
WRITELN('PANTEBREV');
WRITELN('---------');
WRITELN;
WRITE('Tast hovedstol: '); READLN(rest);
WRITE('Tast ydelse pr. termin: '); READLN(ydelse);
WRITE('Tast renten i % pr. termin: '); READLN(r);
WRITE('Tast antal dage i 1. termin: '); READLN(dage);
REPEAT
WRITE('Tast terminsmåneden for 1. termin (jun/dec): ');
READLN(maaned);
UNTIL (maaned = 'jun') OR (maaned = 'dec');
WRITE('Tast årstallet for 1. termin: '); READLN(aar);
IF maaned = 'jun'
THEN maaned := 'JUN'
ELSE maaned := 'DEC';
WRITE(CLRHOM);
WRITELN(' ' : 25, 'Hovedstol: ', rest : 12 : 2);
WRITELN(' ' : 25, 'Ydelse pr. termin: ', ydelse : 12 : 2);
WRITELN(' ' : 25, 'Rente pr. termin: ', r : 12 : 2, '%');
WRITELN(' ' : 25, 'Dage i 1. termin: ', dage : 12);
WRITELN(' ' : 25, '1. termin: ', maaned : 7, aar : 5);
WRITELN(' ---------------------------------');
WRITELN;
WRITELN;
WRITELN(' TERMIN RENTE AFDRAG ',
'YDELSE RESTGÆLD');
WRITELN;
WRITELN(' ---------------------------------------------',
'----------------------');
WRITELN;
rente := INT(rest * r / 100 * dage / 180 * 100 + 0.5) / 100;
delydelse := INT(ydelse * dage / 180 * 100 + 0.5) / 100;
afdrag := delydelse - rente;
rest := rest - afdrag;
WRITELN(maaned : 11, aar : 5, rente : 12 : 2, afdrag : 16 : 2,
delydelse : 16 : 2, rest : 15 : 2);
REPEAT
IF maaned = 'DEC'
THEN
BEGIN
WRITELN;
aar := aar +1;
maaned := 'JUN';
END
ELSE
maaned := 'DEC';
WRITE(maaned : 11, aar : 5);
rente := INT(rest * r + 0.5) / 100;
afdrag := ydelse - rente;
IF rest - afdrag < 0
THEN afdrag := rest;
IF rest - afdrag = 0
THEN ydelse := rente + afdrag;
rest := rest - afdrag;
WRITELN(rente : 12 : 2, afdrag : 16 : 2, ydelse : 16 : 2,
rest : 15 : 2);
UNTIL rest = 0;
END.
«eof»