home *** CD-ROM | disk | FTP | other *** search
/ M.u.C.S. Disc 2000 / MUCS2000.iso / sigisoft / kaufmann / pk5.bas < prev    next >
BASIC Source File  |  1997-10-09  |  7KB  |  140 lines

  1. 1 WIDTH 80: COLOR 15,0,0
  2. 2 DIM H(10)
  3. 10 GOTO 100
  4. 15 LOCATE 20,1: PRINT STRING$(79,205)
  5. 16 LOCATE 21,1: COLOR 0,15: PRINT SPACE$(79)
  6. 17 LOCATE 21,25: PRINT "PROGRAMM WIRD GELADEN.BITTE WARTEN": COLOR 15,0
  7. 18 LOCATE 22,1: PRINT STRING$(79,205): RETURN
  8. 19 GOSUB 15: RUN "MENUE"
  9. 20 ZZ$=LEFT$(ZZ$,L):ZZ$=ZZ$+STRING$(L-LEN(ZZ$),95):Z2=0:Y=1
  10. 21 LOCATE R,S,O:PRINT ZZ$;
  11. 22 LOCATE R,S+Y-1,1
  12. 23 Z$=INKEY$: IF Z$="" THEN 23 ELSE Z=ASC(Z$): Z1=0: IF Z=0 THEN Z1=ASC(RIGHT$(Z$,1))
  13. 24 IF Z<>13 THEN 28 ELSE IF Z2 >0 THEN 23
  14. 25 IF Y=1 THEN ZZ$=CHR$(13):RETURN
  15. 26 IF RIGHT$(ZZ$,1)="_" THEN ZZ$=LEFT$(ZZ$,INSTR(ZZ$,"_")-1)
  16. 27 RETURN
  17. 28 IF Z<>0 THEN 48
  18. 29 IF Z1<>71 THEN 31 ELSE IF Y=1 OR Z2 THEN 23
  19. 30 Y=1:GOTO 22
  20. 31 IF Z1<>75 THEN 33 ELSE IF Y=1 OR Z2 THEN 23
  21. 32 Y=Y-1:GOTO 22
  22. 33 IF Z1<>77 THEN 35 ELSE IF MID$(ZZ$,Y,1)="_" OR Y>L THEN 23
  23. 34 Y=Y+1:GOTO 22
  24. 35 IF Z1<>79 THEN 39 ELSE IF Y>L OR Z2 THEN 23
  25. 36 IF MID$(ZZ$,Y,1)="_" THEN 23
  26. 37 Y=Y+1
  27. 38 IF MID$(ZZ$,Y,1)="_" THEN 22 ELSE 37
  28. 39 IF Z1<>82 THEN 42 ELSE IF RIGHT$(ZZ$,1)<>"_" THEN 23
  29. 40 IF (Z2=0 AND MID$(ZZ$,Y,1)="_") OR Y>L THEN 23
  30. 41 ZZ$=LEFT$(ZZ$,Y-1)+"_"+MID$(ZZ$,Y,L-Y):Z2=Z2+1:GOTO 21
  31. 42 IF Z1<>83 THEN 44 ELSE IF (Z2=0 AND MID$(ZZ$,Y,1)="_") OR Y>L THEN 23
  32. 43 GOSUB 56:ZZ$=LEFT$(ZZ$,Y-1)+MID$(ZZ$,Y+1)+"_":GOTO 21
  33. 44 IF Z1<>117 THEN 46 ELSE IF (Z2=0 AND MID$(ZZ$,Y,1)="_") OR Y>L THEN 23
  34. 45 GOSUB 56:ZZ$=LEFT$(ZZ$,Y-1)+STRING$(L-Y+1,95):GOTO 21
  35. 46 IF Z1<>119 THEN 23 ELSE IF Y=1 THEN 23
  36. 47 ZZ$=MID$(ZZ$,Y)+STRING$(Y-1,95):Y=1:GOTO 21
  37. 48 IF Z<>8 THEN 50 ELSE IF Y=1 THEN 23
  38. 49 ZZ$=LEFT$(ZZ$,Y-2)+MID$(ZZ$,Y)+"_":Y=Y-1:GOTO 21
  39. 50 IF Z<>27 THEN 51 ELSE ZZ$=STRING$(L,95):Y=1:Z2=0: GOTO 21
  40. 51 IF Z=95 OR Y>L THEN 23
  41. 52 ON PK% GOTO 55,53,54
  42. 53 IF Z<46 OR Z>58 THEN 23 ELSE 55
  43. 54 IF Z<>106 AND Z<>110 THEN 23
  44. 55 IF Z=44 THEN 23 ELSE GOSUB 56:ZZ$=LEFT$(ZZ$,Y-1)+Z$+MID$(ZZ$,Y+1):PRINT Z$;:Y=Y+1:GOTO 22
  45. 56 IF Z2 THEN Z2=Z2-1
  46. 57 RETURN
  47. 60 CLS: LOCATE 2,1: PRINT STRING$(79,205)
  48. 61 LOCATE 3,1: COLOR 0,15: PRINT SPACE$(79): LOCATE 3,30: PRINT "KAUFMÄNNISCHES  RECHNEN": LOCATE 4,1: PRINT SPACE$(79)
  49. 62 LOCATE 4,30: PRINT "(C) BY SIEGFRIED HÜBNER       ESC =LADE MENÜ": LOCATE 5,1: PRINT SPACE$(79)
  50. 63 LOCATE 5,24: PRINT "A N S C H A F F U N G S K R E D I T"
  51. 64 COLOR 15,0: LOCATE 6,1: PRINT STRING$(79,205): RETURN
  52. 70 LOCATE 20,1: PRINT STRING$(79,205)
  53. 71 LOCATE 21,1: COLOR 0,15: PRINT SPACE$(79)
  54. 72 LOCATE 21,29: PRINT "BELIEBIGE TASTE DRÜCKEN": COLOR 15,0
  55. 73 LOCATE 22,1: PRINT STRING$(79,205)
  56. 75 E$=INKEY$: IF E$="" THEN 75
  57. 76 IF E$=CHR$(27) THEN 19
  58. 77 RETURN
  59. 90 LOCATE 20,1: PRINT STRING$(79,205)
  60. 91 LOCATE 21,1: COLOR 0,15: PRINT SPACE$(79)
  61. 92 LOCATE 21,34: PRINT "FALSCHE EINGABE": COLOR 15,0
  62. 93 LOCATE 22,1: PRINT STRING$(79,205): RETURN
  63. 95 FOR T=1 TO 4: LOCATE 19+T,1: PRINT SPACE$(79): NEXT: RETURN
  64. 100 GOSUB 60
  65. 101 LOCATE 7,2: PRINT "Der Anschaffungskredit gehört zu den persönlichen Krediten. Die"
  66. 102 LOCATE 8,2: PRINT "Darlehenshöhe kann dabei bis zu 30.000 DM und die Laufzeit bis zu"
  67. 103 LOCATE 9,2: PRINT "60 Monaten betragen. Die Berechnung der Rückzahlungsraten geschieht"
  68. 104 LOCATE 10,2: PRINT "auf die gleiche Weise wie beim Kleinkredit."
  69. 105 LOCATE 12,2: PRINT "Sie haben sich 1000 DM von einem Freund geliehen und vereinbaren mit ihm:"
  70. 106 LOCATE 13,2: PRINT "5 % Zins, Rückzahlung in vier gleichen Jahresraten"
  71. 107 LOCATE 14,2: PRINT "Folgenden Plan müssen Sie aufstellen:"
  72. 108 LOCATE 15,2: PRINT "JAHR       SCHULD      ZINSBETRAG"
  73. 109 LOCATE 16,2: PRINT "  1        1000.--        50.--  "
  74. 110 LOCATE 17,2: PRINT "  2         750.--        37.50  "
  75. 111 LOCATE 18,2: PRINT "  3         500.--        25.00  "
  76. 112 LOCATE 19,2: PRINT "  4         250.--        12.50  ": GOSUB 70
  77. 120 GOSUB 60
  78. 121 LOCATE 7,2: PRINT "Die Summe der Zinsen beträgt demnach 125,-- DM. Sie zahlen also"
  79. 122 LOCATE 8,2: PRINT "Zinsen nur für den Betrag, den Sie jeweils (noch) schulden. Und da Sie"
  80. 123 LOCATE 9,2: PRINT "vier gleiche Rückzahlungsraten vereinbart haben, zahlen Sie in jedem"
  81. 124 LOCATE 10,2: PRINT "Jahr (1000+125)/4=281.25 DM zurück. "
  82. 125 LOCATE 12,2: PRINT "Für dieses Problemstellung nachfolgendes Programm.": GOSUB 70
  83. 130 GOSUB 60
  84. 131 LOCATE 7,2: PRINT "HÖHE DER SCHULD IN DM  :"
  85. 132 ZZ$="": R=7: S=28: L=7: PK%=2: GOSUB 20: SCHULD$=ZZ$: IF SCHULD$=CHR$(13) THEN BEEP: GOSUB 90: GOTO 132
  86. 133 SCHULD=VAL(SCHULD$): IF SCHULD<=0 THEN BEEP: GOSUB 90: GOTO 132
  87. 134 GOSUB 95: SO1=SCHULD
  88. 135 LOCATE 8,2: PRINT "VEREINBARTER ZINS IN % :"
  89. 136 ZZ$="": R=8: S=28: L=3: PK%=2: GOSUB 20: ZINS$=ZZ$: IF ZINS$=CHR$(13) THEN BEEP: GOSUB 90: GOTO 136
  90. 137 ZINS=VAL(ZINS$): IF ZINS<=0 THEN BEEP: GOSUB 90: GOTO 136
  91. 138 GOSUB 95
  92. 139 LOCATE 9,2: PRINT "RÜCKZAHLUNG JAHRE >10  :"
  93. 140 ZZ$="": R=9: S=28: L=2: PK%=2: GOSUB 20: RUECK$=ZZ$: IF RUECK$=CHR$(13) THEN BEEP: GOSUB 90: GOTO 140
  94. 141 RUECK=VAL(RUECK$): IF RUECK<=0 OR RUECK>10 THEN BEEP: GOSUB 90: GOTO 140
  95. 142 GOSUB 95
  96. 143 JB=SCHULD/RUECK
  97. 144 SU=0
  98. 145 FOR I=1 TO RUECK
  99. 146 HI=SCHULD*ZINS/100
  100. 147 SU=SU+HI
  101. 148 SCHULD=SCHULD-JB
  102. 149 NEXT I
  103. 150 SO2=SO1+SU
  104. 151 JZ=SO2/RUECK
  105. 152 LOCATE 11,2: PRINT "Sie zahlen ";RUECK;" Jahre den Betrag von ";JZ;" DM": GOSUB 70
  106. 160 GOSUB 60
  107. 161 LOCATE 7,2: PRINT "DAS PROGRAMM-LISTING"
  108. 162 LOCATE 9,2: PRINT " 10 INPUT 'HÖHE DER SCHULD     ';S             'EINGABE DER SCHULD"
  109. 163 LOCATE 10,2: PRINT " 20 S1=S                                       'AUSTAUSCH VON S IN S1"
  110. 164 LOCATE 11,2: PRINT " 30 INPUT 'ZINS IN %           ';S             'EINGABE VON ZINS  "
  111. 165 LOCATE 12,2: PRINT " 40 INPUT 'RÜCKZAHLUNG JAHRE   ';N             'EINGABE DER JAHRE "
  112. 166 LOCATE 13,2: PRINT " 50 JB=S/N                                     'SCHULD/JAHRE IN JB"
  113. 167 LOCATE 14,2: PRINT " 60 SU=0                                       'VARIABLE SU GLEICH 0"
  114. 168 LOCATE 15,2: PRINT " 70 FOR I=1 TO N                               'DAUER LAUFZEIT JAHRE"
  115. 169 LOCATE 16,2: PRINT " 80 ZI=S*Z/100                                 'BERECHNUNG DM/ZINS  "
  116. 170 LOCATE 17,2: PRINT " 90 SU=SU+ZI                                   'VARIABLE SU BELEGEN "
  117. 171 LOCATE 18,2: PRINT "100 S=S-JB                                     'ABZUG SCHULD VON JB "
  118. 172 LOCATE 19,2: PRINT "110 NEXT I                                     'SCHLEIFENENDE       ": GOSUB 70
  119. 180 GOSUB 60
  120. 181 LOCATE 7,2:  PRINT "110 S2=S1+SU                                   'ÜBERNAHME WERTE IN S2"
  121. 182 LOCATE 8,2:  PRINT "120 JZ=S2/N                                    'BERECHNUNG RATE      "
  122. 183 LOCATE 9,2:  PRINT "130 PRINT 'SIE ZAHLEN IN ';N;' JAHREN'         'AUSGABE TEXT         "
  123. 184 LOCATE 10,2:  PRINT "140 PRINT 'DEN BETRAG VON ';JZ;' DM  '         'AUSGABE TEXT         "
  124. 185 LOCATE 11,2:  PRINT "150 END                                        'PROGRAMMENDE         "
  125. 186 LOCATE 13,2:  PRINT "ANGABE DER VARIABLEN"
  126. 187 LOCATE 15,2:  PRINT "S= HÖHE DER SCHULD     Z= ZINS IN %"
  127. 188 LOCATE 16,2:  PRINT "N= ANZAHL DER JAHRE    Z= ZINS IN %"
  128. 189 LOCATE 17,2:  PRINT "S1= ZWISCHENSPEICHERN VON SCHULD "
  129. 190 LOCATE 18,2:  PRINT "JB= BERECHNUNG SCHULD DURCH ANZAHL JAHRE"
  130. 191 LOCATE 19,2:  PRINT "JZ= AUSGABE RATENHÖHE    S2= ADDIDTION DER SUMMEN"
  131. 200 LOCATE 20,1: PRINT STRING$(79,205)
  132. 201 LOCATE 21,1: COLOR 0,15: PRINT SPACE$(79)
  133. 202 LOCATE 21,10: PRINT "ENDE DES TEILS       WIEDERHOLEN=W      PROGRAMM-MENÜ LADEN= ESC": COLOR 15,0
  134. 203 LOCATE 22,1: PRINT STRING$(79,205)
  135. 205 E$=INKEY$: IF E$="" THEN 205
  136. 206 IF E$=CHR$(27) THEN 19
  137. 207 IF E$="W" OR E$="w" THEN 100
  138. 208 GOTO 205
  139.  
  140.