home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Nibble Magazine
/
nib29a.dsk
/
DECEMBER.1986
/
INT.BUG.TEST.bas
< prev
next >
Wrap
BASIC Source File
|
2023-02-26
|
1KB
|
30 lines
10 REM **********************
20 REM * INT.BUG.TEST *
30 REM * BY WILLIAM PETERS *
40 REM * *
50 REM * COPYRIGHT 1986 BY *
60 REM * MICROSPARC, INC. *
70 REM * CONCORD, MA 01742 *
80 REM **********************
90 TEXT : HOME : NORMAL
100 VTAB 22: PRINT "PRESS <RETURN> TO END": VTAB 1: INPUT " ADDITIVE FRACTION = 1/";F$:F = VAL(F$): IF F = 0 THEN TEXT : HOME : END
110 K = 1/F: CALL -958
120 INPUT "START AT (INTEGER): ";A$:A = VAL(A$)
130 L = .00000001: REM SEVEN ZEROES
140 HOME : PRINT "ADDITIVE FRACTION IS 1/"F: PRINT : PRINT " A INT(VAL(STR$(A)))": REM 16 SPACES
150 PRINT " INT(A) INT(A+L)": PRINT : POKE 34,5: REM 14 SPACES AND 15 SPACES
160 VTAB 22: PRINT "PRESS <RETURN> TO STOP": POKE 35,21: POKE -16368,0: VTAB 6
170 FOR Q = 1 TO 1000
180 IF PEEK( -16384) >127 THEN Q = 1001: POKE -16368,0: REM QUIT IF KEY PRESSSED
190 A = A +K
200 B = INT(A)
210 C = INT( VAL( STR$(A)))
220 D = INT(A +L)
230 PRINT A;: HTAB 16: PRINT B;: HTAB 25: PRINT C;: HTAB 34: PRINT D
240 IF B < >C OR B < >D THEN PRINT : PRINT "ERROR IN INT FUNCTION!": GOSUB 280
250 NEXT Q
260 GOTO 90
270 REM PAUSE AND QUERY SUBROUTINE
280 VTAB 22: PRINT CHR$(7);: PRINT "<ESC> TO STOP, <RETURN> TO CONTINUE";: GET W$
290 IF W$ = CHR$(27) THEN POP : GOTO 90
300 VTAB 22: HTAB 1: CALL -958: PRINT "PRESS <RETURN> TO STOP": HOME : RETURN