COMMON SHARED minx!
, miny!
, ma
, xx!
, maxy!
, r1!
, r2!
, vx!
, vy!
, sx!
, sy!
, s!
Begin:
'c(1) = -1: c(2) = 1: c(3) = -1: c(4) = 3
IF c
(i
) > 0 THEN c$
(i
) = "+" + c$
(i
) s1$ = "(" + c$(1) + "x" + c$(3) + ")"
s2$ = "(" + c$(2) + "x" + c$(4) + ")"
s$ = s1$ + " " + s2$
x2 = c(1) * c(2)
x1
= c
(1) * c
(4) + c
(2) * c
(3):
IF x1
= 0 THEN GOTO Begin
x0 = c(3) * c(4)
q$
= x2$
+ "x" + CHR$(253) + x1$
+ "x" + x0$
r$(1) = q$
r$(2) = s$
a = x2: b = x1: c = x0
d1# = b
d1# = d1# * b
d2# = a
d2# = 4 * d2# * c
dis! = d1# - d2#
r1! = -777: r2! = -777
r$(5) = ""
r$(6) = ""
r$
(5) = "bý-4ac" + STR$(dis!
) r$
(6) = "dis=" + STR$(dis!
) r1! = (-b + dis!) / (2 * a)
r2! = (-b - dis!) / (2 * a)
vx! = (r1! + r2!) / 2
vy! = a * vx! * vx! + b * vx! + c
t
= ABS(r2!
- r1!
) + 2 * .5minx! = r1! - t
maxx! = r2! + t
minx! = minx! - 10
maxx! = maxx! + 10
miny! = -10: maxy! = 10
s! = (maxx! - minx!) / 100
Wubba
s! = (maxx! - minx!) / 300
sx! = (maxx! - minx!) / 180
sy! = (maxy! - miny!) / 20
ty! = Eq!(x!)
Eq! = a * x! * x! + b * x! + c
z! = 1.8
minx! = -.5
IF vx!
<= minx!
THEN minx!
= vx!
IF r1!
<= minx!
THEN minx!
= r1!
IF r2!
<= minx!
THEN minx!
= r2!
minx! = minx! * z!
maxx! = .5
IF vx!
>= maxx!
THEN maxx!
= vx!
IF r1!
>= maxx!
THEN maxx!
= r1!
IF r2!
>= maxx!
THEN maxx!
= r2!
maxx! = maxx! * z!
miny! = vy! + vy! * z!
maxy! = vy! * -z!
maxy! = vy! + vy! * z!
miny! = vy! * -z!
WINDOW (minx!
, miny!
)-(maxx!
, maxy!
)
LINE (minx!
, 0)-(maxx!
, 0) ' x axis LINE (0, miny!
)-(0, maxy!
) ' y axis
s = (maxx! - minx!) / 10
FOR t!
= minx!
TO maxx!
STEP s
/ 10 ' x axis ticks LINE (tx
, ty
)-(tx
, ty
+ 1), 1 WINDOW (minx!
, miny!
)-(maxx!
, maxy!
) LINE (tx
, ty
)-(tx
, ty
+ 3), 1 WINDOW (minx!
, miny!
)-(maxx!
, maxy!
)
s = (maxy! - miny!) / 5
LINE (tx
, ty
)-(tx
- 1, ty
) WINDOW (minx!
, miny!
)-(maxx!
, maxy!
) LINE (tx
, ty
)-(tx
- 3, ty
) WINDOW (minx!
, miny!
)-(maxx!
, maxy!
)
LINE (vx!
, vy!
)-(vx!
, 0), _RGB32(222, 22, 22) ' vertical vertex to x axis LINE (vx!
, vy!
)-(0, vy!
), _RGB32(222, 22, 22) ' horizontal to y axis r$
(4) = "v=" + STR$(vx!
) + "," + STR$(vy!
)
ml = 0
WINDOW (minx!
, miny!
)-(maxx!
, maxy!
)