home *** CD-ROM | disk | FTP | other *** search
/ M.u.C.S. Disc 2000 / MUCS2000.iso / sigisoft / trechner / trechner.bas < prev    next >
BASIC Source File  |  1997-01-11  |  3KB  |  64 lines

  1. 310 modus = 1
  2. 320 intmax = 65536!
  3. 330 operator$ = "+-*/E"
  4. 340 ende$ = "=" + CHR$(13)
  5. 350 sonder$ = "<>r" + CHR$(8)
  6. 370 dezzif$ = "0123456789."
  7. 430 GOSUB 2100
  8. 440 COLOR 0, 1
  9. 450 GOSUB 580
  10. 460 GOTO 1250
  11. 580 LOCATE 5, 15
  12. 590 IF display$ = "" THEN display$ = "0"
  13. 600 PRINT RIGHT$(STRING$(20, " ") + display$, 20)
  14. 700 LOCATE 5, 14
  15. 710 IF INSTR(ende$, opalt$) <> 0 THEN PRINT " " ELSE PRINT opalt$
  16. 1140 RETURN
  17. 1250 a$ = INKEY$: IF a$ = "" THEN GOTO 1250
  18. 1260 IF modus = 1 AND INSTR(dezzif$, a$) <> 0 THEN n = 1
  19. 1290 IF INSTR(operator$, a$) <> 0 OR INSTR(ende$, a$) <> 0 THEN n = 4
  20. 1300 IF INSTR(sonder$, a$) <> 0 THEN n = 5
  21. 1310 IF INSTR(modus$, a$) <> 0 THEN n = 6
  22. 1320 ON n GOSUB 1380, 1540, 1540, 1540, 1800
  23. 1330 GOTO 1250
  24. 1380 IF LEN(zahl$) < 20 AND (INSTR(zahl$, ".") = 0 OR a$ <> ".") THEN zahl$ = zahl$ + a$
  25. 1390 display$ = zahl$: GOSUB 580
  26. 1400 RETURN
  27. 1540 IF modus = 1 THEN zahl = VAL(zahl$)
  28. 1580 IF opalt$ = "" THEN result = zahl
  29. 1590 IF opalt$ = "+" THEN result = result + zahl
  30. 1600 IF opalt$ = "-" THEN result = result - zahl
  31. 1610 IF opalt$ = "*" THEN result = result * zahl
  32. 1611 IF opalt$ = "E" OR opalt$ = "e" THEN STOP
  33. 1620 IF opalt$ = "/" THEN IF zahl <> 0 THEN result = result / zahl
  34. 1670 IF modus = 1 THEN display$ = STR$(result)
  35. 1710 IF INSTR(ende$, opalt$) = 0 THEN GOSUB 580 ELSE IF zahl$ <> "" THEN result = zahl
  36. 1720 opalt$ = a$: GOSUB 700
  37. 1730 zahl$ = ""
  38. 1800 IF ASC(a$) = 8 THEN opalt$ = "": result = 0: zahl$ = "": display$ = zahl$: GOSUB 580
  39. 1810 RETURN
  40. 2100 CLS : LOCATE 2, 5
  41. 2110 PRINT TAB(5); "--------------------------------"
  42. 2120 PRINT TAB(5); "|    Siegi's Taschenrechner    |"
  43. 2130 PRINT TAB(5); "--------------------------------"
  44. 2140 PRINT TAB(5); "|                              |"
  45. 2150 PRINT TAB(5); "--------------------------------"
  46. 2160 PRINT TAB(5); "|     Dieses   |  Tastenfeld   |"
  47. 2170 PRINT TAB(5); "| Programm ist |               |"
  48. 2180 PRINT TAB(5); "| Public Domain|  7  8  9  /   |"
  49. 2190 PRINT TAB(5); "|     frei     |               |"
  50. 2200 PRINT TAB(5); "|   kopierbar  |  4  5  6  *   |"
  51. 2210 PRINT TAB(5); "|--------------|               |"
  52. 2220 PRINT TAB(5); "|              |  1  2  3  -   |"
  53. 2230 PRINT TAB(5); "|   E = Ende   |               |"
  54. 2240 PRINT TAB(5); "|              |  0  .  =  +   |"
  55. 2260 PRINT TAB(5); "--------------------------------"
  56. 2261 PRINT TAB(5); "|   Backspace  =   Löschen     |"
  57. 2262 PRINT TAB(5); "--------------------------------"
  58. 2263 PRINT TAB(5); "| (c) 1997 by Siegfried Hübner |"
  59. 2264 PRINT TAB(5); "|             Obere Vorstadt 21|"
  60. 2265 PRINT TAB(5); "|             91575 Windbach   |"
  61. 2266 PRINT TAB(5); "--------------------------------"
  62. 2310 RETURN
  63.  
  64.