Add README.md
[pdp8.git] / sw / rescue / muenchen2013 / files / ueb10.pr
CommitLineData
81e70d48
PH
1PROGRAM KREDIT (INPUT*);\r
2(*IN DEM PROGRAMM WIRD JE NACH DEN GEGEBENEN DATEN,DIE TILGUNGSRATE,\r
3DIE LAUFZEIT ODER DER KREDIT BERECHNET.*)\r
4\r
5VAR ZEICHEN : CHAR;\r
6TILG,RATE,ZINS,KAPITAL : REAL;\r
7ZEIT : INTEGER;\r
8FUNCTION HOCH (A:REAL;B:INTEGER):REAL;\r
9BEGIN\r
10HOCH := EXP(B*LN(A));\r
11END;\r
12FUNCTION KREDIT (RATE,PROZENT:REAL;JAHRE:INTEGER):REAL;\r
13VAR Q,POTENZ : REAL;\r
14BEGIN\r
15Q := 1+PROZENT/100;\r
16IF Q <> 1 THEN\r
17BEGIN\r
18POTENZ := HOCH (Q,JAHRE);\r
19KREDIT := RATE*(POTENZ-1)/(POTENZ*(Q-1));\r
20END\r
21ELSE\r
22KREDIT := RATE*JAHRE;\r
23END;\r
24FUNCTION TILGUNG (KAPITAL,PROZENT:REAL;JAHRE:INTEGER):REAL;\r
25VAR Q,POTENZ : REAL;\r
26BEGIN\r
27Q := 1+PROZENT/100;\r
28IF Q <> 1 THEN\r
29BEGIN\r
30POTENZ := HOCH (Q,JAHRE);\r
31TILGUNG := KAPITAL*POTENZ*(Q-1)/(POTENZ-1);\r
32END\r
33ELSE\r
34TILGUNG := KAPITAL/JAHRE;\r
35END;\r
36FUNCTION LAUFZEIT (KAPITAL,TILG,PROZENT:REAL):REAL;\r
37VAR Q : REAL;\r
38BEGIN\r
39Q := 1+PROZENT/100;\r
40RATE := KAPITAL*(TILG + PROZENT)/100; (*DIE TILGUNGSRATE WIRD BERECHNET*)\r
41IF Q <> 1 THEN\r
42LAUFZEIT := (LN(RATE)-LN(RATE-KAPITAL*(Q-1)))/LN(Q)\r
43ELSE\r
44LAUFZEIT := KAPITAL/RATE;\r
45END;\r
46BEGIN (*HAUPTPROGRAMM*)\r
47WRITELN (TTY,' KREDITBERECHNUNG');\r
48WRITELN (TTY,' ---------------------');\r
49WRITELN (TTY);\r
50WRITELN (TTY,'ES WIRD JE NACH DEN DATEN,DIE IN EINER DATEI GEGEBEN SIND');\r
51WRITELN (TTY,'ENTWEDER DER KREDIT,DIE LAUFZEIT ODER ');\r
52WRITELN (TTY,'DIE TILGUNGSRATE BERECHNET.');\r
53WRITELN (TTY);\r
54BREAK;\r
55REPEAT\r
56REPEAT\r
57READ (ZEICHEN);\r
58IF ZEICHEN IN ['K','T','L'] THEN\r
59BEGIN\r
60CASE ZEICHEN OF\r
61'K':BEGIN\r
62READ (RATE,ZINS,ZEIT);\r
63WRITELN (TTY,'BEI EINER TILGUNGSRATE VON',RATE:15:2,' DM');\r
64WRITELN (TTY,' EINEM ZINSSATZ VON',ZINS:15:2,' %');\r
65WRITELN (TTY,' UND EINER LAUFZEIT VON',ZEIT:15,' JAHREN');\r
66WRITELN (TTY,'BERECHNET SICH DER KREDIT MIT :');\r
67WRITELN (TTY,' ',KREDIT (RATE,ZINS,ZEIT):15:2,' DM');\r
68WRITELN (TTY);\r
69BREAK;\r
70END;\r
71'T': BEGIN\r
72READ (KAPITAL,ZINS,ZEIT);\r
73WRITELN (TTY,' BEI EINEM KREDIT VON',KAPITAL:15:2,' DM');\r
74WRITELN (TTY,' EINEM ZINSSATZ VON',ZINS:15:2,' %');\r
75WRITELN (TTY,' UND EINER LAUFZEIT VON',ZEIT:15,' JAHREN');\r
76WRITELN (TTY,'BERECHNET SICH DIE TILGUNGSRATE MIT :');\r
77WRITELN (TTY,' ',TILGUNG (KAPITAL,ZINS,ZEIT):15:2,' DM');\r
78WRITELN (TTY);\r
79BREAK;\r
80END;\r
81'L':BEGIN\r
82READ (KAPITAL,TILG,ZINS);\r
83WRITELN (TTY,' BEI EINEM KREDIT VON',KAPITAL:15:2,' DM');\r
84WRITELN (TTY,' EINER TILGUNG VON',TILG:15:2,' %');\r
85WRITELN (TTY,'UND EINEM ZINSSATZ VON',ZINS:15:2,' %');\r
86WRITELN (TTY,'BERECHNET SICH DIE LAUFZEIT MIT :');\r
87WRITELN (TTY,' ',LAUFZEIT(KAPITAL,TILG,ZINS):15:2,' JAHRE');\r
88WRITELN (TTY);\r
89BREAK;\r
90END;\r
91END;\r
92END\r
93ELSE\r
94BEGIN\r
95WRITELN (TTY,' " ',ZEICHEN,' " IST EIN FALSCHES ZEICHEN,UEBERPRUEFEN SIE IHRE EINGABEN IN DER DATEI');\r
96WRITELN (TTY,'UND VERBESSERN SIE SIE.');\r
97WRITELN (TTY);\r
98BREAK;\r
99END;\r
100UNTIL EOLN;\r
101READLN;\r
102UNTIL EOF;\r
103END.\r
104\0\0