Arithmetic evaluation: Difference between revisions

Content added Content deleted
Line 1,325: Line 1,325:
#
#
subr ntok
subr ntok
if ch = 0
while ch$ = " "
tok$ = "eof"
nch
else
.
while ch$ = " "
if ch >= 48 and ch <= 58
nch
tok$ = "n"
.
s$ = ""
if ch >= 48 and ch <= 58
while ch >= 48 and ch <= 58 or ch$ = "."
tok$ = "n"
s$ &= ch$
s$ = ""
while ch >= 48 and ch <= 58 or ch$ = "."
s$ &= ch$
nch
.
tokv = number s$
else
tok$ = ch$
nch
nch
.
.
tokv = number s$
elif ch = 0
tok$ = "end of text"
else
tok$ = ch$
nch
.
.
.
.
Line 1,392: Line 1,390:
.
.
ntok
ntok
else
err = 1
print "error: factor expected, got " & tok$
.
.
return nd
return nd
Line 1,452: Line 1,453:
.
.
input_data
input_data
4 * 6
4 *
4.2 * ((5.3+8)*3 + 4)
4.2 * ((5.3+8)*3 + 4)
2.5 * 2 + 2 * 3.14
2.5 * 2 + 2 * 3.14