home *** CD-ROM | disk | FTP | other *** search
/ RUN Flagazine Extra: Special 2 / run-special-2.zip / BABBAGE.BAS < prev    next >
BASIC Source File  |  1992-05-31  |  3KB  |  47 lines

  1. 1000 REM BABBAGE'S VERSCHILLENMACHINE
  2. 1010 COMMON MENUFL%
  3. 1020 CLS:KEY OFF:DIM N(4):COLOR 14,0:R$="#####":N(1)=0:N(2)=1:N(3)=4:N(4)=0
  4. 1030 Y=2:LOCATE 11,25:PRINT "BABBAGE'S 2e VERSCHILLENMACHINE":FOR Q=0 TO 97
  5. 1040 LOCATE 1,1:PRINT USING R$;Q;:PRINT CHR$(253);" -- ";:PRINT USING R$;N(1)
  6. 1050 PRINT:PRINT USING R$;Q+1;:PRINT CHR$(253);" -- ";:PRINT USING R$;N(2)
  7. 1060 PRINT:PRINT USING R$;Q+2;:PRINT CHR$(253);" -- ";:PRINT USING R$;N(3):Z=1
  8. 1070 PRINT:PRINT USING R$;Q+3;:PRINT CHR$(253);" == ?????";:GOSUB 1260:GOSUB 1230
  9. 1080 LOCATE 15,1:PRINT "1e Difference ";,,N(2);"-";N(1);"=";N(2)-N(1):V=N(2)-N(1)
  10. 1090 GOSUB 1250:LOCATE Z+1,36:PRINT USING R$;N(2)-N(1):COLOR 14,0:GOSUB 1260
  11. 1100 Z=3:LOCATE Z,35:PRINT CHR$(180):GOSUB 1240:Y=Y-.2:IF Y<0 THEN Y=0
  12. 1110 LOCATE 16,1:PRINT "1e Difference ";,,N(3);"-";N(2);"=";N(3)-N(2):W=N(3)-N(2)
  13. 1120 GOSUB 1260:LOCATE Z+1,36:PRINT USING R$;N(3)-N(2):COLOR 14,0:GOSUB 1260
  14. 1130 LOCATE 2,45:PRINT STRING$(15,196)CHR$(191)
  15. 1140 LOCATE 3,60:PRINT CHR$(195):LOCATE 4,45:PRINT STRING$(15,196)CHR$(217)
  16. 1150 LOCATE 3,40:COLOR 31,0:PRINT CHR$(24):GOSUB 1260
  17. 1160 LOCATE 17,1:PRINT "2e Difference geeft de constante: ";,W;"-";V;"=";W-V
  18. 1170 GOSUB 1260:LOCATE 3,62:PRINT W-V:GOSUB 1260:LOCATE 18,1
  19. 1180 PRINT "Berekening";Q+3;"e kwadraat in 1e Register:":GOSUB 1260
  20. 1190 LOCATE 2,15:PRINT " ":LOCATE 3,40:PRINT " ":LOCATE 4,15:PRINT " "
  21. 1200 GOSUB 1260:GOSUB 1270:GOSUB 1420:NEXT Q:
  22. 1210 LOCATE 25,1:PRINT "<Esc> voor einde";
  23. 1220 WHILE INKEY$<>CHR$(27):WEND:GOTO 1430
  24. 1230 COLOR 14,0:LOCATE Z,20:PRINT STRING$(15,196)CHR$(191):IF Y<.5 THEN 1250
  25. 1240 LOCATE Z+1,35:PRINT CHR$(195):LOCATE Z+2,20:PRINT STRING$(15,196)CHR$(217)
  26. 1250 LOCATE Z+1,15:COLOR 31,0:PRINT CHR$(24)
  27. 1260 IF INKEY$=CHR$(27) THEN 1430 ELSE T=TIMER:WHILE TIMER-T<Y:WEND:COLOR 14,0:RETURN
  28. 1270 LOCATE 19,1:PRINT "Laagste inhoud Register 1:";,,N(3)
  29. 1280 LOCATE 6,15:COLOR 31,0:PRINT CHR$(24):COLOR 14,0:GOSUB 1260
  30. 1290 LOCATE 20,1:PRINT "PLUS laagste inhoud Register 2:";,W
  31. 1300 LOCATE 5,40:COLOR 31,0:PRINT CHR$(24):COLOR 14,0:GOSUB 1260
  32. 1310 LOCATE 21,1:PRINT "PLUS de constante";,,2"
  33. 1320 LOCATE 4,63:COLOR 31,0:PRINT CHR$(24):GOSUB 1260:N(4)=N(3)+W+2
  34. 1330 LOCATE 22,1:PRINT "Brengt naar 1e Register het kwadraat van:";,Q+3;"=";
  35. 1340 PRINT N(4):LOCATE 7,11:COLOR 31,0:PRINT USING R$;N(4):COLOR 14,0
  36. 1350 GOSUB 1260:IF Y THEN SOUND 1500,1:LOCATE 23,1:PRINT "<Enter> vervolg - <Esc> voor Einde"
  37. 1360 I$=INKEY$:IF I$<>CHR$(13) AND I$<>CHR$(27) AND Y THEN 1360
  38. 1370 IF I$=CHR$(27) THEN 1430
  39. 1380 IF Y THEN FOR K=1 TO 8:LOCATE K,16:PRINT STRING$(60,32);:NEXT K
  40. 1390 IF Y THEN FOR K=15 TO 23:LOCATE K,1:PRINT STRING$(80,32);:NEXT K
  41. 1400 LOCATE 6,15:PRINT " ":LOCATE 9,1:PRINT "TRANSPORT..."
  42. 1410 GOSUB 1260:LOCATE 9,1:PRINT STRING$(13,32):RETURN
  43. 1420 N(1)=N(2):N(2)=N(3):N(3)=N(4):RETURN
  44. 1430 CLS:SCREEN 0:IF MENUFL% THEN 120
  45. 1440 END
  46. 20000 REM EIND BABBAGE
  47.