home *** CD-ROM | disk | FTP | other *** search
/ Input 64 / Input_64_86-01_1986_Verlag_Heinz_Weise_de.d64 / lohn-einkommen85 (.txt) < prev    next >
Commodore BASIC  |  2023-02-26  |  18KB  |  497 lines

  1. 0 ifpeek(50307)=120thenpoke50257,0
  2. 10 rem  *******************************
  3. 20 rem  *  lohn und einkommensteuer   *
  4. 30 rem  *  von h. zimmermann          *
  5. 40 rem  *   &  h. hondong             *
  6. 50 rem  *   &  m. hanke               *
  7. 60 rem  *******************************
  8. 65 sa=7:rem sekundaeradresse drucker
  9. 70 dima(44),b(24),c(30),d(10),e(10),f(24),y$(6),s(4)
  10. 80 printchr$(14):printchr$(8):tp=31
  11. 90 poke53280,11:poke53281,11
  12. 100 print"[147][204][160][207][160][200][160][206][160]-  [197][160][201][160][206][160][203][160][207][160][205][160][205][160][197] [206][160][211][160][212][160][197][160][213][160][197][160][210]";
  13. 110 print"f u e r "
  14. 115 print"                           "
  15. 120 print"    1  99999   888   55555 "
  16. 130 print "   11  9   9  8   8  5     "
  17. 140 print "  1 1  9   9  8   8  5     "
  18. 150 print " 1  1  9   9  8   8  5     "
  19. 160 print "    1  99999   888   55555 "
  20. 170 print "    1      9  8   8      5 "
  21. 180 print "    1      9  8   8      5 "
  22. 190 print "    1      9  8   8      5 "
  23. 200 print "    1  99999   888   55555 "
  24. 201 print "                           "
  25. 202 print"(1) _  [194]erechnung der [202]ahressteuer 1985"
  26. 204 print"(2) _  [197]inkommensteuertabelle      1985"
  27. 206 print"               von  [218]ihoha";
  28. 210 geta$:ifa$=""then210
  29. 215 ifa$="1"then230
  30. 220 ifa$="2"then5000
  31. 225 goto210
  32. 230 print"[147] [200]inweise zu den [197]ingaben ! "
  33. 240 print"[199]rundsaetzlich sind immer nur           volle[146] [196][205] - [194]etraege  ";
  34. 250 print"einzugeben!        [196]ie [197]ingaben sind mit der [210]eturn-[212]aste[146]  ";
  35. 260 print"abzuschliessen, [193]usnahmen sind (j/n)-":print
  36. 270 print"[193]bfragen. [198]alscheingaben koennen durch"
  37. 280 print"[201][206][211][212]/[196][197][204][146] korrigiert werden."
  38. 290 print" 0 [146] [196][205]-[197]ingaben oder nicht zutreffende  [193]bfragen koennen durch ";
  39. 300 print"[196]ruecken der     [210]eturn-[212]aste[146] beantwortet werden."
  40. 310 gosub3370
  41. 320 s$="[211]teuerpflichtigen":e$="[197]hefrau":r$="[210]eligion":g$="[199]eburtsdatum"
  42. 330 k$="katholisch":v$="evangelisch":l$="ledig":h$="verheiratet"
  43. 340 az$="[193]ngaben laut [218]eilen [206]r.":an$="[193]us [193]nlage [206] fuer":ki$="[203]irchensteuer"
  44. 350 print"[147] [193]llgemeine [193]ngaben ":a(1)=0
  45. 360 print"[198]amilienstand des"
  46. 370 print""+s$+":  ([214]) = "+h$
  47. 380 print"([204]) = "+l$
  48. 390 gety$:ify$=""then390
  49. 400 ify$="v"thenprint"[145][145]   "+h$+"[146]     ":goto430
  50. 410 ify$="l"thenprint"[145][145]   "+l$+"[146]          ":a(1)=1:goto430
  51. 420 goto390
  52. 430 print"                                       "
  53. 440 printg$+" des      ([212][212][205][205][202][202])"
  54. 450 print""+s$+":      .  .  [146]":gosub3390:ifa<210102thena(2)=1
  55. 460 ifa(1)=1then480
  56. 470 print""+e$+"          :      .  .  [146]":gosub3390:ifa<210102thenb(2)=1
  57. 480 print""+r$+" des          ( 0 / [197] / [203] )"
  58. 490 print""+s$+":":gosub3500:ify$="k"thena(3)=2
  59. 500 ify$="e"thena(3)=1
  60. 510 ifa(1)=1then550
  61. 520 print""+e$+"          :":gosub3500
  62. 530 ify$="k"thenb(3)=2
  63. 540 ify$="e"thenb(3)=1
  64. 550 print"[218]ahl der [203]inder  :"
  65. 560 gety$:ify$=""theny$="*"
  66. 570 ify$=chr$(13)theny$="0"
  67. 580 ifasc(y$)<48orasc(y$)>57then560
  68. 590 print"[145]";y$:a(4)=val(y$)
  69. 600 gosub3540:ifa$="n"then350
  70. 610 print"[147] [193]ngaben zum [193]rbeitslohn "
  71. 620 print""+an$+" den "+s$:b(0)=0:gosub700:gosub2390:ifa(1)then1670
  72. 630 print"[147] [193]ngaben in [193]nlage [206] fuer die "+e$+" ? "
  73. 640 print"                (j/n) ?":gosub3550
  74. 650 ifa$="n"then1670
  75. 670 print"[147] [193]ngaben zum [193]rbeitslohn "
  76. 680 print""+an$+" die "+e$:b(0)=1
  77. 690 gosub700:gosub2390:goto1670
  78. 700 gosub850:gosub1120
  79. 710 print"[147] [215]erbungskosten allgemein [146]"
  80. 720 print"[193]ngaben in [218]eile 45 - 48 ? (j/n)":gosub3550
  81. 730 ifa$="j"thengosub1400:goto750
  82. 740 print"[145]: keine":gosub3540:ifa$="n"then710
  83. 750 print"[147] [205]ehraufwendungen fuer [214]erpflegung "
  84. 760 print"[194]etraege in [218]eile 49 - 54 ? (j/n)":gosub3550
  85. 770 ifa$="j"thengosub1480:goto790
  86. 780 print"[145]: keine":gosub3540:ifa$="n"then750
  87. 790 print"[147] [205]ehraufwendungen ":print" fuer doppelte [200]aushaltsfuehrung "
  88. 800 print"[193]ngaben in [218]eile 55 - 63 ? (j/n)":gosub3550
  89. 810 ifa$="j"thengosub1570:goto830
  90. 820 print"[145]: keine":gosub3540:ifa$="n"then790
  91. 830 f(22)=f(17)+f(19)+f(20)+f(21):iff(22)<564thenf(22)=564
  92. 840 return
  93. 850 x$="[194]ruttoarbeitslohn":tp$="":tp=31
  94. 860 print""+x$+"      [196][205]        [146]"
  95. 870 gosub3570:f(5)=y:gosub3770
  96. 880 x$="[204]ohnsteuer":print""+x$+"             [196][205]        [146]":gosub3570
  97. 890 f(6)=y :gosub3770:x$=ki$
  98. 900 onb(0)+1goto910,920
  99. 910 ona(3)+1goto960,930,950
  100. 920 onb(3)+1goto960,930,950
  101. 930 print""+x$+" (ev)     [196][205]        [146]":gosub3570:f(7)=y:gosub3770
  102. 940 goto960
  103. 950 print""+x$+" (rk)     [196][205]        [146]":gosub3570:f(7)=y :gosub3770
  104. 960 print"[194]etraege in [218]eile 7 -15 (j/n) ?":gosub3550
  105. 970 ifa$="n"thenprint"[145]   keine [146]":goto1090
  106. 980 x$="[211]umme der [218]eilen 7 - 9 [196][205]        [146]":print"[145]"+x$:gosub3570
  107. 990 gosub3770:ify=0then1010
  108. 1000 f(8)=y
  109. 1010 x$="[211]umme der [218]eilen 10-12 [196][205]        [146]"
  110. 1020 print""+x$:gosub3570:gosub3770:f(9)=y
  111. 1030 print"[211]umme der [218]eile  13    [196][205]        [146]"
  112. 1040 gosub3570:gosub3770:ify=0then1060
  113. 1050 f(10)=y
  114. 1060 print"[211]umme der [218]eilen 14+15 [196][205]        [146]"
  115. 1070 gosub3570:gosub3770:ify =0then1090
  116. 1080 f(12)=y
  117. 1090 gosub3540:ifa$="n"thenfori=5to12:f(i)=0:next:ifb(0)=1then670
  118. 1100 ifa$="n"then610
  119. 1110 return
  120. 1120 print"[147] [215]erbungskosten "
  121. 1130 print"[198]ahrten zw. [215]ohnung und [193]rbeitsstaette"
  122. 1140 print"    [208][203][215](1)  [205][207][212](2)  [205][207][198](3)  [198][193][200](4)":gosub3700:a=val(a$)
  123. 1150 ifa=0then1300
  124. 1160 onagoto1170,1180,1190,1200:goto1260
  125. 1170 f(13)=.36:w$="[208][203][215]":goto1210
  126. 1180 f(13)=.16:w$="[205][207][212]":goto1210
  127. 1190 f(13)=.22:w$="[205][207][198]":goto1210
  128. 1200 f(13)=.12:w$="[198][193][200]"
  129. 1210 print""+w$+"[146] benutzt an [212]agen             [146]"
  130. 1220 gosub3570:gosub3770:f(14)=y
  131. 1230 iff(14)>365then:print"[145][145][145]":goto1210
  132. 1240 print"[197]infache [197]ntfernung              [146]":gosub3570:gosub3770:f(15)=y
  133. 1250 iff(15)>999then:print"[145][145][145]":goto1240
  134. 1260 f(16)=f(13)*f(14)*f(15):f(17)=f(17)+f(16)
  135. 1270 ifx<2thenprint"weitere [193]rbeitsstaetten (j/n)?":gosub3550
  136. 1280 ifa$="j"thenprint"[145][145][145]":x=x+1:goto1140
  137. 1290 ifa$="n"thenprint"[145]:   keine"
  138. 1300 gosub3540:ifa$="n"thenf(14)=0:f(15)=0:x=0:f(17)=0:goto1120
  139. 1310 print"[147] [215]erbungskosten ":x$="[207]effentliche [214]erkehrsmittel"
  140. 1320 print""+x$:print"[193]ufwendungen        : [196][205]         [146]":gosub3570
  141. 1330 gosub3770
  142. 1340 f(16)=y
  143. 1350 print"vom [193]rbeitgeber"
  144. 1360 print"steuerfrei ersetzt  : [196][205]         [146]":gosub3570:gosub3770
  145. 1370 f(18)=y
  146. 1380 gosub3540:ifa$="n"thenf(16)=0:f(18)=0:goto1310
  147. 1385 f(17)=f(17)+f(16)-f(18)
  148. 1390 return
  149. 1400 x$="[194]etraege aus [218]eile "
  150. 1410 print"[145]"+x$+"45: [196][205]        [146]":gosub3570:gosub3770:f(19)=y
  151. 1420 print""+x$+"46: [196][205]        [146]":gosub3570:gosub3770:f(19)=f(19)+y
  152. 1430 print""+x$+"47: [196][205]        [146]":gosub3570:gosub3770:f(19)=f(19)+y
  153. 1440 print""+x$+"48: [196][205]        [146]":gosub3570:gosub3770:f(19)=f(19)+y
  154. 1450 print"[211]umme in [198]eld 77     = [196][205]":y=f(19):gosub3770
  155. 1460 gosub3540:ifa$="n"then710
  156. 1470 return
  157. 1480 x$="[194]etraege aus [218]eile "
  158. 1490 print"[145]"+x$+"50: [196][205]        [146] ":gosub3570:gosub3770:f(20)=y
  159. 1500 print""+x$+"52: [196][205]        [146]":gosub3570:gosub3770:f(20)=f(20)+y
  160. 1510 print""+x$+"53: [196][205]        [146]":gosub3570:gosub3770:f(20)=f(20)+y
  161. 1520 print"steuerfrei ersetzt   : [196][205]        [146]":gosub3570:gosub3770
  162. 1530 f(22)=f(20)-y
  163. 1540 print"[211]umme in [198]eld 76     = [196][205]":y=f(22):gosub3770
  164. 1550 gosub3540:ifa$="n"then750
  165. 1560 return
  166. 1570 x$="[194]etraege aus [218]eile "
  167. 1580 print"[145]"+x$+"58: [196][205]        [146]":gosub3570:gosub3770:f(21)=y
  168. 1590 print""+x$+"59: [196][205]        [146]":gosub3570:gosub3770:f(21)=f(21)+y
  169. 1600 print""+x$+"60: [196][205]        [146]":gosub3570:gosub3770:f(21)=f(21)+y
  170. 1610 print""+x$+"61: [196][205]        [146]":gosub3570:gosub3770:f(21)=f(21)+y
  171. 1620 print"steuerfrei ersetzt   : [196][205]        [146]":gosub3570:gosub3770
  172. 1630 f(21)=f(21)-y
  173. 1640 print"[211]umme in [198]eld 75     = [196][205]":y=f(21):gosub3770
  174. 1650 gosub3540:ifa$="n"then790
  175. 1660 return
  176. 1670 print"[147] [193]ngaben aus [193]nlage [214] "
  177. 1680 print"[197]ink. aus [214]ermietung und [214]erpachtung                     (j/n)?"
  178. 1690 gosub3550:ifa$="n"thenprint"[145]keine ":goto1760
  179. 1700 print"[145][211]etzen [211]ie die [211]umme ein,die [211]ie aus der[193]nlage [214] ermittelt haben."
  180. 1710 print"[194]ei negativen [197]inkuenften das - [218]eichen "
  181. 1720 print"vor der [197]ingabe nicht vergessen!"
  182. 1730 print"[211]umme aus [193]nlage [214] :  [196][205]         [146]"
  183. 1740 gosub3570:ifm=1theny=y*-1
  184. 1750 gosub3770:v=y
  185. 1760 gosub3540:ifa$="n"then1670
  186. 1770 print"[147] [211]onderausgaben ":x$="[211]ozialversicherung ":tp=33:tp$=""
  187. 1780 print""+x$+"des [211]teuerpflichtigen"
  188. 1790 print"nur [193]rbeitnehmer[146]anteil: [196][205]         [146]":gosub3570:gosub3770
  189. 1800 a(23)=y:ifa(1)then1840
  190. 1810 print""+x$+"der [197]hefrau"
  191. 1820 print"nur [193]rbeitnehmer[146]anteil: [196][205]         [146]":gosub3570:gosub3770
  192. 1830 a(24)=y
  193. 1840 x$="[210]entenversicherung "
  194. 1850 print""+x$+"des [211]teuerpflichtigen"
  195. 1860 print"nur [193]rbeitgeber[146]anteil : [196][205]         [146]":gosub3570:gosub3770
  196. 1870 a(25)=y:ifa(1)then1910
  197. 1880 print""+x$+"der [197]hefrau"
  198. 1890 print"nur [193]rbeitgeber[146]anteil   [196][205]         [146]":gosub3570:gosub3770
  199. 1900 a(26)=y
  200. 1910 gosub3540:ifa$="n"then1770
  201. 1920 print"[147] [211]onderausgaben ":print"in 1985   in 1984"
  202. 1930 print"gezahlt:  erstattet:"
  203. 1940 print"[198]reiw. [214]ers.:   [196][205]        [146]":tp=24:tp$="[157][157][157][157][157][157]":gosub3570
  204. 1950 gosub3770:a(27)=y
  205. 1960 printtab(29);"[145][196][205]        [146]":tp$="":tp=37:gosub3570:gosub3770
  206. 1970 a(27)=a(27)-y
  207. 1980 print"[203]rankenvers.:   [196][205]        [146]":tp=24:tp$="[157][157][157][157][157][157]":gosub3570
  208. 1990 gosub3770:a(28)=y
  209. 2000 printtab(29);"[145][196][205]        [146]":tp$="":tp=37:gosub3570:gosub3770
  210. 2010 a(28)=a(28)-y
  211. 2020 print"[213]nfallvers. :   [196][205]        [146]":tp=24:tp$="[157][157][157][157][157][157]":gosub3570
  212. 2030 gosub3770:a(29)=y
  213. 2040 printtab(29);"[145][196][205]        [146]":tp$="":tp=37:gosub3570:gosub3770
  214. 2050 a(29)=a(29)-y
  215. 2060 print"[204]ebensvers. :   [196][205]        [146]":tp=24:tp$="[157][157][157][157][157][157]":gosub3570
  216. 2070 gosub3770:a(30)=y
  217. 2080 printtab(29);"[145][196][205]        [146]":tp$="":tp=37:gosub3570:gosub3770
  218. 2090 a(30)=a(30)-y
  219. 2100 print"[200]aftpflicht :   [196][205]        [146]":tp=24:tp$="[157][157][157][157][157][157]":gosub3570
  220. 2110 gosub3770:a(31)=y
  221. 2120 printtab(29);"[145][196][205]        [146]":tp$="":tp=37:gosub3570:gosub3770
  222. 2130 a(31)=a(31)-y:gosub3540:ifa$="n"then1920
  223. 2140 b(1)=a(27)+a(28)+a(29)+a(30)+a(31):tp=33:tp$=""
  224. 2150 print"[147] [211]onderausgaben ":print"[194]ausparkasse [194]eitraege:  [196][205]        [146]"
  225. 2160 gosub3570:gosub3770:a(32)=y
  226. 2170 print"[203]irchensteuer gezahlt :  [196][205]        [146]":gosub3570:gosub3770:a(33)=y
  227. 2180 print"in 1984 erstattet     :  [196][205]        [146]":gosub3570:gosub3770
  228. 2190 a(41)=y:a(33)=a(33)-a(41)
  229. 2200 print"[211]teuerberatungskosten :  [196][205]        [146]":gosub3570:gosub3770:a(34)=y
  230. 2210 print"[194]erufsausbildung      :  [196][205]        [146]":gosub3570:gosub3770:a(35)=y
  231. 2220 print"[211]penden ([218]eile 81-83) :  [196][205]        [146]":gosub3570:gosub3770:a(36)=y
  232. 2230 print"weitere [211]onderausgaben:  [196][205]        [146]":gosub3570:gosub3770:a(42)=y
  233. 2232 print" [193]ussergewoehnliche [194]elastungen "
  234. 2234 print"[211]umme der [193]ufwendungen:  [196][205]        [146]":gosub3570:gosub3770:a(43)=y
  235. 2240 gosub3540:ifa$="n"then2150
  236. 2250 goto2470
  237. 2260 ifa(0)=0thene=e/2
  238. 2270 e=int(e/54)*54
  239. 2280 ife<=4212thensx=0:goto2360
  240. 2290 ife>=18000then2310
  241. 2300 sx=int(.22*e-926):goto2360
  242. 2310 ife>=60000then2330
  243. 2320 a=(e-18000)/10000:sx=int((((3.05*a-73.76)*a+695)*a+2200)*a+3034):goto2360
  244. 2330 ife>=130000then2350
  245. 2340 a=(e-60000)/10000:sx=int((((.09*a-5.45)*a+88.13)*a+5040)*a+20018):goto2360
  246. 2350 sx=int(.56*e-14837)
  247. 2360 ifsx<0thensx=0
  248. 2370 ifa(0)=0thensx=sx*2
  249. 2380 return
  250. 2390 fori=5to22:gosub2420
  251. 2400 next
  252. 2410 return
  253. 2420 ifb(0)then2440
  254. 2430 a(i)=f(i):f(i)=0:goto2450
  255. 2440 b(i)=f(i):f(i)=0
  256. 2450 return
  257. 2460 :
  258. 2470 gosub3860
  259. 2480 x$=" [204]ohnsteuerausgleich ":y$="[204]ohnsteuer"
  260. 2490 iff(1)thenx$="[197]inkommensteuerveranlagung":y$="[197]inkommensteuer"
  261. 2500 tx=36:ifdr=1thentx=6
  262. 2510 print"[147]"+x$
  263. 2520 print:print"[198]estsetzung der "+y$
  264. 2530 print:print:print"in 1985 gezahlte [211]teuern     [196][205] ";:y=f(6):gosub3830
  265. 2540 print:print"fuer 1985 festgesetzt        [196][205] ";:y=et:gosub3830
  266. 2550 print:print"verbleibende [194]etraege        [196][205] ";:y=f(6)-et:gosub3830
  267. 2560 ifa(7)+b(7)=0ande(5)=0then2600
  268. 2570 print:print"[203]irchensteuer gezahlt        [196][205] ";:y=a(7)+b(7):gosub3830
  269. 2580 print:print"[203]irchensteuer festgesetzt 9% [196][205] ";:y=e(5):gosub3830
  270. 2590 print:print"verbleibende [194]etraege        [196][205] ";:y=(a(7)+b(7))-e(5):gosub3830
  271. 2600 iff(2)<=0thenf(2)=0:goto2620
  272. 2610 print:print"[210]ueckzahlung [211]parzulage      [196][205] ";:y=f(2):gosub3830
  273. 2620 print"========================================"
  274. 2630 y=(f(6)-et)+((a(7)+b(7)))-e(5)-f(2)
  275. 2640 x$="[210]estguthaben":ify<0thenx$="[206]achzahlung "
  276. 2650 print""+x$+"[146]                 [196][205] ";:gosub3830
  277. 2660 ifhk=1thenprint#4:close4:hk=0:goto2700
  278. 2670 ifdr=1thenopen4,ga,sa:cmd4:hk=1:goto2480
  279. 2680 print"            (+)  weiter                 ";
  280. 2690 geta$:ifa$<>"+"then2690
  281. 2700 print"[147] [194]erechnung "
  282. 2710 x$="[197]hemann   [197]hefrau":ifa(1)=1thenx$="[211]teuerpflichtiger"
  283. 2720 tp=26:tx=36:ifdr=1thentx=6:tp=6
  284. 2730 print:print"                     "+x$
  285. 2740 print:print"[194]ruttoarbeitslohn [196][205]";:y=a(5):gosub3800:ifa(1)thenprint
  286. 2750 ifa(1)=0then:y=b(5):gosub3830
  287. 2760 print:print"ab [198]reibetraege   [196][205]";:y=1080:gosub3800:ifa(1)thenprint
  288. 2770 ifa(1)=0then:y=1080:gosub3830
  289. 2780 print:print"ab [215]erbungskosten [196][205]";:y=a(22):gosub3800:ifa(1)thenprint
  290. 2790 ifa(1)=0then:y=b(22):gosub3830
  291. 2800 print:print"[197]inkuenfte        [196][205]";:y=a(5)-1080-a(22):ify<0theny=0
  292. 2810 gosub3800:ifa(1)thenprint:goto2840
  293. 2820 y=b(5)-1080-b(22):ify<0theny=0
  294. 2830 gosub3830
  295. 2840 print:print"[146]=============================";:ifa(1)=0thenprint"========="
  296. 2850 print:print"[193]nlage [214]          [196][205]";:y=v:gosub3800
  297. 2860 :
  298. 2870 print:print:print"[211]umme der [197]ink.   [196][205]";:y=c(2)+v:ify<0theny=0
  299. 2880 gosub3800:ifa(1)thenprint:goto2910
  300. 2890 y=d(2):ify<0theny=0
  301. 2900 gosub3830
  302. 2910 ifhk=1thenprint#4:close4:hk=0:goto2960
  303. 2920 ifdr=1thenopen4,ga,sa:cmd4:print:print:print:hk=1:goto2700
  304. 2930 :
  305. 2940 gosub3740
  306. 2950 ifa$="-"then2480
  307. 2960 print"[147] [194]erechnung [146]  ([197]nde)":tx=36:ifdr=1thentx=6
  308. 2970 print:print"[199]esamtbetrag der [197]inkuenfte [196][205]";:y=c(3):ify<0theny=0
  309. 2980 gosub3830
  310. 2985 y=a(7)+b(7)-a(41):ify=0then2995
  311. 2990 print:print"[203]irchensteuer (abziehbar)   [196][205]";:y=a(7)+b(7)-a(41):gosub3830
  312. 2995 y=a(42)+a(34)+a(35)+a(36):ify=0then3010
  313. 3000 print:print"weitere [211]onderausgaben      [196][205]";:gosub3830
  314. 3010 ifa(43)=0then3080
  315. 3020 print:print"[193]ussergewoehnl. [194]elastungen:"
  316. 3030 print:print"gezahlt       [196][205]";:y=a(43):tx=23:ifdr=1thentx=6
  317. 3040 gosub3830
  318. 3050 print:print"abziehbar                   [196][205]";:y=a(44)
  319. 3060 tx=36:ifdr=1thentx=6
  320. 3070 gosub3830
  321. 3080 print:print"[214]ersicherungsbeitraege:"
  322. 3090 print:print"gezahlt       [196][205]";:y=c(6):tx=23:ifdr=1thentx=6
  323. 3100 gosub3830
  324. 3110 print:print"abziehbar                   [196][205]";:y=b(24):tx=36:ifdr=1thentx=6
  325. 3120 gosub3830
  326. 3130 print"======================================="
  327. 3140 print:print"[218]u versteuerndes [197]inkommen  [196][205]";:y=c(0):ifc(0)<0theny=0
  328. 3150 gosub3830
  329. 3160 ifhk=1thenprint#4:close4:hk=0:goto3190
  330. 3170 ifdr=1thenopen4,ga,sa:cmd4:hk=1:print:print:print:goto2960
  331. 3180 gosub3740:ifa$="-"then2700
  332. 3190 print"[147]     [204]ohn und [197]inkommensteuer 1985      "
  333. 3195 ifpeek(50307)=120then3210
  334. 3200 print"[193]usgabe auf [196]rucker    ([196])"
  335. 3210 print"[206]eue [194]erechnung        ([206])"
  336. 3215 print"[197]rgebnisse wiederholen ([210][197][212][213][210][206])"
  337. 3220 geta$:ifa$=""then3220
  338. 3230 ifa$=chr$(13)thendr=0:goto2480
  339. 3240 ifa$="n"then:run
  340. 3250 ifa$="d"andpeek(50307)<>120then3270
  341. 3260 goto3220
  342. 3270 ga=4:print"[196]ruckeradresse ? 4"
  343. 3280 geta$
  344. 3290 ifa$=chr$(13)then3330
  345. 3300 ge=val(a$):ifge>3andge<7thenga=ge:goto3320
  346. 3310 goto3280
  347. 3320 print"";a$:goto3280
  348. 3330 open4,ga,sa:close4
  349. 3340 ifst=-128then3360
  350. 3350 dr=1:goto2480
  351. 3360 print"[196]rucker einschalten !":fora=0to1000:next:goto3190
  352. 3370 geta$:ifa$<>" "then3370
  353. 3380 return
  354. 3390 gosub3480:fori=1to6
  355. 3400 gety$(i):ify$(i)=""theny$(i)="*"
  356. 3410 ify$(i)=chr$(20)then3490
  357. 3420 ifasc(y$(i))<48orasc(y$(i))>57then3400
  358. 3430 print"[145]";y$(1)y$(2);".";y$(3)y$(4);".";y$(5)y$(6):next
  359. 3440 geta$:ifa$=chr$(13)then3470
  360. 3450 ifa$=chr$(20)then3490
  361. 3460 goto3440
  362. 3470 a=val(y$(5)+y$(6)+y$(3)+y$(4)+y$(1)+y$(2)):return
  363. 3480 fori=1to6:y$(i)=" ":next:return
  364. 3490 print"[145]  .  .  ":goto3390
  365. 3500 gety$:ify$="k"thenprint"[145]";k$:return
  366. 3510 ify$="e"thenprint"[145]";v$:return
  367. 3520 ify$="0"ory$=chr$(13)thenprint"[145]keine":return
  368. 3530 goto3500
  369. 3540 print"           alles richtig ?  (j/n)       ";
  370. 3550 geta$:ifa$="j"ora$="n"thenreturn
  371. 3560 goto3550
  372. 3570 gosub3480:fori=1to6
  373. 3580 gety$(i):ify$(i)=""theny$(i)="*"
  374. 3590 ify$(i)=chr$(13)then3670
  375. 3600 ify$(i)=chr$(20)thengosub3690:goto3570
  376. 3610 m=0:ifi=1andy$(1)="-"thenm=1:goto3630
  377. 3620 ifasc(y$(i))<48orasc(y$(i))>57then3580
  378. 3630 print"[145]"+tp$;y$(1)y$(2)y$(3)y$(4)y$(5)y$(6):next
  379. 3640 geta$:ifa$=chr$(13)then3670
  380. 3650 ifa$=chr$(20)thengosub3690:goto3570
  381. 3660 goto3640
  382. 3670 y$=y$(1)+y$(2)+y$(3)+y$(4)+y$(5)+y$(6):y=val(y$)
  383. 3680 print"[145]"+tp$+"       ":return
  384. 3690 print"[145]"+tp$+"       ":return
  385. 3700 geta$:ifa$=""then3700
  386. 3710 ifa$=chr$(13)thenreturn
  387. 3720 ifval(a$)=0orval(a$)>4then3700
  388. 3730 return
  389. 3740 print"         (+) weiter  (-) zurueck        ";
  390. 3750 geta$:ifa$="+"ora$="-"thenreturn
  391. 3760 goto3750
  392. 3770 yf=abs(y):y=int(y+.5):print"[145]";
  393. 3780 printtab(int(log(yf-(yf=0))*.43429448188)*(yf>=1)+int(-yf)*(yf<1)+tp);y
  394. 3790 return
  395. 3800 yf=abs(y):y=int(y+.5):ifdr=0thenprint"";
  396. 3810 printtab(int(log(yf-(yf=0))*.43429448188)*(yf>=1)+int(-yf)*(yf<1)+tp);y;
  397. 3820 return
  398. 3830 yf=abs(y):y=int(y+.5):ifdr=0thenprint"";
  399. 3840 printtab(int(log(yf-(yf=0))*.43429448188)*(yf>=1)+int(-yf)*(yf<1)+tx);y
  400. 3850 return
  401. 3860 print"[147][194]erechnung !"
  402. 3870 c(1)=a(5)-600:c(2)=c(1)-480-a(22)
  403. 3880 ifa(1)=0thend(1)=b(5)-600:d(2)=d(1)-480-b(22)
  404. 3890 ifd(2)<0thend(2)=0
  405. 3900 ifc(2)<0thenc(2)=0
  406. 3910 c(3)=c(2)+d(2)+v:c(4)=a(33)+a(34)+a(35)+a(36)+a(42):gosub4550
  407. 3920 ifa(1)=1then3940
  408. 3930 ifc(4)<540thenc(4)=540
  409. 3940 ifc(4)<270thenc(4)=270
  410. 3950 c(5)=c(3)-c(4):c(7)=6000:ifa(1)=0thenc(7)=3000
  411. 3960 c(6)=a(23)+a(24)+a(27)+a(28)+a(29)+a(30)+a(31)
  412. 3970 c(8)=c(7)-a(25)-a(26):ifc(8)<0thenc(8)=0
  413. 3980 c(9)=c(6)-c(8):ifc(9)<0thenc(9)=0
  414. 3990 c(10)=c(6):ifc(8)<c(6)thenc(10)=c(8)
  415. 4000 c(11)=c(9)+a(32):b(0)=2340+300*a(4)
  416. 4010 ifa(1)=0thenb(0)=4680+600*a(4)
  417. 4020 c(12)=b(0):ifc(11)<b(0)thenc(12)=c(11)
  418. 4030 c(13)=c(11)/2-b(0)/2:c(14)=b(0)/2
  419. 4040 ifc(14)>c(13)thenc(14)=c(13)
  420. 4050 c(15)=c(10)+c(12)+c(14):c(16)=c(1):ifc(1)>62400thenc(16)=62400
  421. 4060 b(4)=d(1):ifd(1)>62400thenb(4)=62400
  422. 4070 c(16)=c(16)+b(4)
  423. 4080 c(17)=int(c(16)*0.09):c(18)=c(17):ifc(17)>b(0)thenc(18)=b(0)
  424. 4090 c(19)=c(17):ifc(17)>b(0)/2thenc(19)=b(0)/2
  425. 4100 b(23)=c(18)+c(19)
  426. 4110 c(20)=int(b(23)/54+1)*54:ifa(1)=1then4130
  427. 4120 ifc(20)<600thenc(20)=600
  428. 4130 ifc(20)<300thenc(20)=300
  429. 4140 b(24)=c(15):ifc(15)<c(20)thenb(24)=c(20)
  430. 4150 c(0)=c(5)-b(24):ifa(2)=1thenc(0)=c(0)-720
  431. 4160 ifb(2)=1thenc(0)=c(0)-720
  432. 4170 ifa(1)=1anda(4)>0thenc(0)=c(0)-4212
  433. 4180 c(0)=c(0)-(a(4)*432)-a(44)
  434. 4190 ifa(1)=1andc(0)>(24000+a(4)*900)thenf(1)=1
  435. 4200 ifa(1)=0andc(0)>(48000+a(4)*1800)thenf(1)=1
  436. 4210 e=c(0)+a(12)+b(12):a(0)=a(1):gosub2260
  437. 4220 et=sx*(c(0)/(c(0)+a(12)+b(12))):f(6)=a(6)+b(6)
  438. 4230 e(2)=a(10)+b(10):f(2)=e(2):ife(2)=0orf(1)=1then4390
  439. 4240 ifa(9)>624thena(9)=624
  440. 4250 e(1)=23:ifa(4)>2thene(1)=33
  441. 4260 e(3)=int(a(9)*e(1)+0.5)/100
  442. 4270 ifa(1)=1then4300
  443. 4280 ifb(9)>624thenb(9)=624
  444. 4290 e(3)=int(b(10)*e(1)+0.5)/100+e(3)
  445. 4300 ifa(8)>624thena(8)=624
  446. 4310 f(8)=a(8)-a(9):e(1)=16:ifa(4)>2thene(1)=26
  447. 4320 iff(8)<0thenf(8)=0
  448. 4330 e(3)=int(f(8)*e(1)+0.5)/100+e(3)
  449. 4340 ifa(1)=1then4380
  450. 4350 ifb(8)>624thenb(8)=624
  451. 4360 f(8)=b(8)-b(9):e(3)=int(b(8)*e(1)+0.5)/100+e(3)
  452. 4370 iff(8)<0thenf(8)=0
  453. 4380 f(2)=e(2)-e(3):ife(2)<0thene(2)=0
  454. 4390 ifb(3)=0anda(3)=0then4550
  455. 4400 ifa(3)<>0andb(3)<>0thene(4)=et:goto4490
  456. 4410 ifa(3)=0then4460
  457. 4420 e=c(2(NULL):a(0)=1:gosub2260
  458. 4430 e(4)=sx:ifa(1)=1thene(4)=et:goto4490
  459. 4440 e=d(2):gosub2260
  460. 4450 e(4)=et*e(4)/(sx+e(4)):goto4490
  461. 4460 e=c(2):a(0)=1:gosub2260
  462. 4470 e(4)=sx:e=d(2(NULL):gosub2260
  463. 4480 e(4)=et*sx/(sx+e(4))
  464. 4490 ifa(4)=0then4530
  465. 4500 ifa(4)=1thene(4)=e(4)-600:goto4530
  466. 4510 ifa(4)=2thene(4)=e(4)-1560:goto4530
  467. 4520 e(4)=e(4)-1560-((a(4)-2)*1800)
  468. 4530 ife(4)<0thenf(4)=0
  469. 4540 e(5)=int(e(4)*9)/100:ife(5)<7.2thene(5)=7.2
  470. 4550 e(8)=4:ifa(1)thene(8)=5
  471. 4560 ifa(1)=1anda(4)>0thene(5)=5
  472. 4570 ifc(3)>100000thene(8)=e(8)+1
  473. 4580 ifc(3)>30000thene(8)=e(8)+1
  474. 4590 ifa(4)>0anda(4)<3thene(8)=e(8)-2
  475. 4600 ifa(4)>3thene(8)=e(8)-2
  476. 4610 ife%8)<=0thene(8)=1
  477. 4620 e(7)=c(3)*e(8)/100:a(44)=a(43)-e(7):ifa(44)<0thena(44)=0
  478. 4625 return
  479. 4630 return
  480. 5000 print"[147]  [202]ahres - [197]inkommensteuertabelle 1985  [146]";:tp=37:tp$=""
  481. 5010 print"[218]u versteuerndes [197]inkommen : [196][205]        [146]":gosub 3570:gosub 3770
  482. 5015 ek=y:e=ek
  483. 5020 print"[202]ahressteuer [199]rundtabelle  : [196][205] "
  484. 5030 a(0)=1:gosub2260:y=sx:s(1)=sx:gosub 3770
  485. 5040 print"[202]ahressteuer [211]plittingtab. : [196][205] ":e=ek:a(0)=0:gosub 2260:s(2)=sx
  486. 5050 y=sx:gosub 3770
  487. 5060 print"    [211]teuervorteil durch [193]bschreibung    [146]";
  488. 5070 print"[193]bschreibungsbetrag        : [196][205]        [146]":gosub3570
  489. 5080 gosub3770:ab=y:ek=ek-ab:a(0)=1:e=ek:gosub2260:s(3)=s(1)-sx
  490. 5090 print"[211]teuervorteil [199]rundtabelle : [196][205] ":y=s(3):gosub3770
  491. 5100 :
  492. 5110 a(0)=0:e=ek:gosub2260:s(4)=s(2)-sx
  493. 5120 print"[211]teuervorteil [211]plittingtab.: [196][205] ":y=s(4):gosub3770
  494. 5130 print"        [206]eue [194]erechnung (j/n) ?         [146]";:gosub3550
  495. 5140 ifa$="j"then5000
  496. 5150 print"[147]":clr:goto70
  497.